python中子类父类继承具体指什么 是指第二个类的参数是第一个类吗,加于不加有什么区别呢

 平凡随缘2010 发布于 2022-10-25 11:22

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

class A(object):
    def __init__(self, name):
        self.name=name
        print ("name:", self.name)
    def getName(self):
        return 'A ' + self.name

class B(A):
    def __init__(self, name):
        print ("hi")
        self.name = name
    def getName(self):
        return 'B '+self.name

if __name__=='__main__':
    b=B('hello')
    print( b.getName())
#di二ge
class A(object):
    def __init__(self, name):
        self.name=name
        print ("name:", self.name)
    def getName(self):
        return 'A ' + self.name

class B(A):
    def __init__(self, name):
        super(B, self).__init__(name)
        print ("hi")
        self.name =  name
    def getName(self):
        return 'B '+self.name

if __name__=='__main__':
    b=B('hello')
    print (b.getName())
1 个回答
  • 最后的结果怎么会是一样呢?
    第一种的结果是:
    hi
    B hello
    第二种的结果是:
    ('name:', 'hello')
    hi
    B hello

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

    2022-10-26 23:24 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有