继承是一种创建新类的方式,在python中,新建的类可以继承一个或多个父类,
父类又可称为基类或超类,新建的类称为派生类或子类
一个类可以被多个类继承
一个类可以继承多个父类---仅限于python中
注:在Python 3中,所有的类都有父类,若是没有继承父类,默认都是继承object
class A:#父类、基类、超类(必须放在子类之前) pass class A(object):#父类、基类、超类(必须放在子类之前) pass class B: pass class A_son(A,B):#子类、派生类 pass class AB_son(A): pass print(A_son.__bases__) #结果:(<class '__main__.A'>, <class '__main__.B'>) print(AB_son.__bases__) #结果:(<class '__main__.A'>,) print(A.__bases__) #结果:(<class 'object'>,)
super---既可以在累的内部使用,也可以在类的外部使用
在类的内部使用时,需要传默认的使用参数;
在类的外部使用时,必要传类名和对象名
class Animal: def __init__(self,name,hp,aggr): #self就是一个可以存储很多属性的大字典,不过是往字典里面添加属性的方法发生了变化 self.name = name self.hp = hp self.aggr = aggr def eat(self): print("打药回血!") class Dog(Animal): def __init__(self,name,hp,aggr,kind): super().__init__(name,hp,aggr) #只在新式类中有,Python3 中所有的类都是新式类 self.kind = kind def eat(self): print('dog eating!') class Person(Animal): pass alex = Dog('alex',200,500,'泰迪') print(alex.kind) #结果:泰迪 alex.eat() #结果:dog eating! super(Dog,alex).eat() #结果:打药回血!