python中子类父类继承具体指什么?,python中子类继承,这两个不同代码块有撒区别


这两个不同代码块有撒区别,最后的结果是一样的啊

class A(object):    def __init__(self, name):        self.name=name        print ("name:", self.name)    def getName(self):        return 'A ' + self.nameclass B(A):    def __init__(self, name):        print ("hi")        self.name = name    def getName(self):        return 'B '+self.nameif __name__=='__main__':    b=B('hello')    print( b.getName())#di二geclass A(object):    def __init__(self, name):        self.name=name        print ("name:", self.name)    def getName(self):        return 'A ' + self.nameclass B(A):    def __init__(self, name):        super(B, self).__init__(name)        print ("hi")        self.name =  name    def getName(self):        return 'B '+self.nameif __name__=='__main__':    b=B('hello')    print (b.getName())

最后的结果怎么会是一样呢?
第一种的结果是:
hi
B hello
第二种的结果是:
('name:', 'hello')
hi
B hello

第二种里面调用了父类的A.__init__("hello"), 而第一种是override了父类的__init__(self, name) function.

编橙之家文章,

评论关闭