分类
python继承不像java使用支持单继承,而python支持单继承、多继承。
单继承
1 class ParentClass: 2 # 父类的属性和方法 3 4 class ChildClass(ParentClass): 5 # 子类的属性和方法
单继承顾名思义就是子类只有1个父类。示例ChildClass类只有1个父类ParentClass
多继承
class ChildClass(ParentClass1, ParentClass2, ...): # 子类的属性和方法
顾名思义就是1个类继承多个父类。子类可以复用父类的属性、方法
1 ''' 2 多重继承:子类可以复用所有父类的属性、方法 3 ''' 4 5 6 class Animal: 7 def __init__(self, name): 8 self.name = name 9 10 def speak(self): 11 print(f"{self.name} is speaking.") 12 13 14 class CanFly: 15 def fly(self): 16 print(f"{self.name} is flying.") 17 18 19 class CanSwim: 20 def swim(self): 21 print(f"{self.name} is swimming.") 22 23 24 class FlyingFish(Animal, CanFly, CanSwim): 25 pass 26 27 28 fish = FlyingFish("monkey") 29 fish.speak() # 输出:monkey is speaking. 30 fish.fly() # 输出:monkey is flying. 31 fish.swim() # 输出:monkey is swimming.
在上述示例中,Animal
、CanFly
和 CanSwim
是独立的父类,FlyingFish
是同时继承这三个父类的子类。FlyingFish
继承了所有父类的属性和方法,因此可以调用 speak()
、fly()
和 swim()
方法。
需要注意的是,多继承可能导致复杂性增加,并且需要仔细处理方法冲突等问题。因此,在使用多继承时,应该谨慎考虑继承关系和设计合理的继承结构。
标签:name,继承,子类,self,分类,父类,class From: https://www.cnblogs.com/allenxx/p/17566991.html