永发信息网

Python 如何调用父类的构造函数

答案:2  悬赏:0  手机版
解决时间 2021-12-31 17:14
  • 提问者网友:你挡着我发光了
  • 2021-12-31 13:35
Python 如何调用父类的构造函数
最佳答案
  • 五星知识达人网友:第幾種人
  • 2022-01-10 04:11
"""
       共有以下二种方法

"""

##class Foo(object):   
##     def __init__(self): 
##         self.val =100
##         print(self.val)
##class Foo2(Foo): 
##     def __init__(self): 
##         Foo.__init__(self)  #类调用实例方法时,需要传入self指代的实例 
##         print(self.val)
##
##if __name__ == '__main__':
##    foo2 = Foo2()



class Foo(object):   
     def __init__(self): 
         self.val =100

class Foo2(Foo): 
     def __init__(self): 
         super().__init__()  
         print(self.val)

if __name__ == '__main__':
    foo2 = Foo2()
全部回答
  • 1楼网友:舊物识亽
  • 2022-01-10 04:19
前面相关文章提过,python中类的初始化方法是__init__(),因此父类子类的初始化方法都是这个,如果子类不实现这个函数,初始化时调用父类的初始化函数,如果子类实现这个函数,就覆盖了父类的这个函数,既然继承父类,就要在这个函数里显式调用一下父类的__init__(),这跟c++,java不一样,他们是自动调用父类初始化函数的。 调用父类函数有以下方法:class a:def method(self, arg):pass class b(a): def method(self, arg): # a.method(self,arg) # 1 # super(b, self).method(arg) #2 super().method(arg) #3 1.直接写类名调用 2.用super(type,obj).method(arg)方法调用。 3.在类定义中调用本类的父类方法,可以直接 super().method(arg). 在代码中调用对象的父类的方法的示例:ob = b()super(b,ob).method(arg) #调用class b的父类class a的method。 初始化中调用父类初始化方法示例: class b(a):
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯