1 继承
- 继承概念: 指一个类获取到其它一个或多个类中的属性和方法,但是父类(也称超类、基类)中的属性或者方法不能被继承
- 继承方式: 定义类时,在类后面的括号中指定当前类的父类
- 作用: 提高了类的复用性,使得类之间产生了关系,也因此有了多态的特性
- super(): 获取当前类的父类,并且可以用于调用父类的方法,直接用类名调用父类方法多用于单继承,但是如果使用多继承,会涉及到查找顺序、重复调用等种种问题。
class A:
a1 = '公有类属性'
__a2 = '私有类变量'
def Pr(self):
print('类名访问类公有变量', A.a1)
print('对象访问类公有变量', self.a1)
def Pr2(self):
print('对象访问类私有变量', self.__a2)
print('类访问类私有变量', A.__a2)
def Pr3(self, name):
self.name = name
print('对象访问普通对象属性', name)
def Pr4(self, name):
self.__name = name
print('对象访问私有对象属性', self.__name)
def __Pr5(self):
return (self.a1)
def Pr5(self):
print('类访问私有方法',A.__Pr5(self))
print('对象访问类私有方法',(self.__Pr5()))
@classmethod
def Pr6(cls):
cls.Pr4(cls,'QQQ')
@staticmethod
def Pr7(x):
print(super(x))
print(x.__Pr5(x))
x.Pr3(x,'qwwe')
class B(A):
b1 = 'b1'
def Prb(self):
print(self.b1)
super().Pr4('mmmmmmm')
print('通过类内访问')
x = B()
x.Pr