类的继承
什么是继承?
继承是一种新建类的方式,新建的类称为子类,被继承的类称为父类。python中,父类、子类(派生类)只有在继承的时候才会产生。
继承的特性:子类会继承父类所有的属性。
为什么要用继承?
使用继承可以减少代码的冗余。
对象的继承
python中支持一个类同时继承多个父类(不推荐使用,当继承多个父类的时候,功能与功能之间会出现混乱。)
使用__bases__方法可以获取对象继承的类
class A:
def __init__(self,a):
self.a =a
class B:
def __init__(self,b):
self.b =b
class C(A,B):
pass
print(C.__bases__)
(, )
在python3中如果一个类没有继承任何类,则默认继承object类
在python2中如果一个类没有继承任何类,不会继承object类
对象查找属性的顺序
对象本身--->对象的类--->父类--->父类的父类,如果还没找到就会报错
class Foo:
def f1(self):
print('Foo.f1')
def f2(self): # self = b
print('Foo.f2')
self.f1() # b.f1()
class Bar(Foo):
def f1(self): # b.f1()