python 在子类中增加__init__,并继承父类的__init__

问题

经常子类继承父类的时候,重写了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
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容