继承类问题复习
1、单继承(父类名调用方法)
A继承B,C继承B。
C的对象初始化时执行顺序:
先调用C的初始化,再调用B的初始化,再调用A的初始化
A的初始化结束,B的初始化结束,C的初始化结束、
总结:单继承的初始化开始是倒序的,结束是顺序的。
print("***单继承使用父类名.__init__发生的状态***")
class Parent(object):
def __init__(self,name):
print("parent的init开始被调用")
self.name=name
print("parent的init结束被调用")
class Son1(Parent):
def __init__(self,name,age):
print("Son1的init开始被调用")
self.age=age
Parent.__init__(self,name)
print("Son1的init结束被调用")
class Grandson(object):
def __init__(self,name,age,gender):
print("Grandson的init开始被调用")
self.gender=gender
Son1.__init__(self,name,age)
print("Grandson的init结束被调用")
gs = Grandson('grandson',12,'男')
print('姓名',gs.name)
print('年龄',gs.age)
print('性别',gs.gender)
print('***单继承使用父类名.__init__发生的状态***\r\n')
执行结果:
***单继承使用父类名.__init__发生的状态***
Grandson的init开始被调用
Son1的init开始被调用
parent的init开始被调用
parent的init结束被调用
Son1的init结束被调用
Grandson的init结束被调用
年龄 12
性别 男
***单继承使用父类名.__init__发生的状态***