问题
经常子类继承父类的时候,重写了init时,实例化子类,就不会调用父类已经定义的init
解决办法
要在子类中的init方法中手动调用父类的init完成父类的初始化:super().init(...)
实例
class A:
"""
这是父类
"""
def __init__(self):
self.test = "gz_Tester"
class B(A):
"""
这是子类
"""
def __init__(self):
# 调用父类的__init__完成父类的初始化
super().__init__()
self.hh = "huahua"
def gg(self):
print(self.test)
print(self.hh)
b = B()
b.gg()
# 输出结果
# gz_Tester
# huahua
网友评论