Python类super()及私有属性原理解析
super()有参数写法:
#1.定义父类 classA(object): def__init__(self): self.num=1 definfo_print(self): print(self.num) classC(A): def__init__(self): self.num=2 definfo_print(self): print(self.num) super(C,self).__init__() super(C,self).info_print() #2.定义子类,继承父类 classB(C): def__init__(self): self.num=3 definfo_print(self): self.__init__() print(self.num) defprint_A(self): A.__init__(self) A.info_print(self) defprint_C(self): C.__init__(self) C.info_print(self) defprint_AC(self): super(B,self).__init__() super(B,self).info_print() b=B() b.print_AC()
super()用于调用父类的方法
无参写法:
super().__init__()
super().info_print()
使用super()方法可以自动查找父类,查找顺序遵循__mro__类属性的顺序
私有属性与方法
设置私有极限的方法:在属性名和方法名前面加上两个下划线__
设置之后设置的实例属性或实例方法不继承给子类
获取和修改私有属性:
在类中添加函数:
defget_money(self): returnself.__money defset_money(self,money): self.__money=money
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。