写在前面
有时候新类需要继承父类的属性,但是又要定义一些自己的属性,可以通过以下方法来实现。
第一种方法
这种方法即不重写新类的init方法,完全继承父类,缺点是无法初始化新的属性,只能执行函数添加属性。
class Test1(object):
def __init__(self):
self.name = 'test1'
self.number = 1
class Test2(Test1):
pass
第二种方法
同样完全继承了父类的属性,而且可以重写某个字段,或者拓展新的属性。
class Test1(object):
def __init__(self):
self.name = 'test1'
self.number = 1
class Test2(Test1):
def __init__(self):
super().__init__() #也可以写成super(Test2,self).__init__()
self.name = 'test2'