多态 - 在重写的同时添加现有方法
我想要能够继承一个类,并且定义自己的 __init__
方法,但同时还想运行原来的 __init__
方法。
为了说明这个问题,假设我有以下这些类:
class A(object):
def __init__(self):
self.var1 = 1
class B(A):
def __init__(self)
self.var2 = 2
doInitForA()
我想要能够这样做:
instB = B()
print (instB.var1) #1
print (instB.var2) #2
根据 Ignacio Vazquez-Abrams 的建议进行了编辑。(可以在不提升热度的情况下编辑吗?)
5 个回答
3
你可能想看看这个问题:在Python中链式调用父类构造函数,特别是使用 super(b, self).__init__()
这个方法。
6
把
doInitForA()
替换成
super(b, self).__init__()
0
你可以选择调用 a.__init__(self)
,或者让 a
继承自 object
,然后使用 super()
。