python继承__init__函数
2016-11-09 20:16 放作夥 阅读(1891) 评论(0) 编辑 收藏 举报Python子类会把父类的构造函数也继承,特意记录一下,跟java不一样,java如果子类不写构造函数,会生成一个默认的无参构造函数,隐式调用父类的无参构造函数
【1】Python中如果子类有自己的构造函数,不会自动调用父类的构造函数,如果需要用到父类的构造函数,则需要在子类的构造函数中显式的调用。
【2】如果子类没有自己的构造函数,则会直接从父类继承构造函数,这在单继承(一个子类只从一个父类派生)中没有任何理解上的问题。
问题:如果是多继承的情况,一个子类从多个父类派生,而子类又没有自己的构造函数,则子类默认会继承哪个父类的构造函数。
【3】子类从多个父类派生,而子类又没有自己的构造函数时,
(1)按顺序继承,哪个父类在最前面且它又有自己的构造函数,就继承它的构造函数;
(2)如果最前面第一个父类没有构造函数,则继承第2个的构造函数,第2个没有的话,再往后找,以此类推。