【基础】类中的继承
1.什么是类的继承
2.类的继承方式
-
单继承(Single Inheritance)
-
多继承(Multiple Inheritance)
3.在子类中添加方法
4.覆盖父类中的方法
5.总结
1.什么是类的继承
它允许一个类(子类)获取另一个类(父类)的属性和方法。通过继承,子类可以重用父类的代码,并且可以在此基础上添加自己的特定属性和方法,从而实现代码的复用和扩展。 在类的继承中,父类通常包含一些通用的属性和方法,而子类可以继承这些通用的特性。子类可以通过继承获得父类的属性和方法,并且可以根据需要进行修改或扩展。这种机制使得代码更具有灵活性和可维护性。
2.继承方式
1.单继承
在Python中,一个类可以通过在类定义时在括号中指定父类来实现单继承。
# 定义一个父类Animal
class Animal:
def __init__(self, name):
self.name = name
def speak(self):
print("Animal is speaking")
# 定义一个子类Dog,继承自Animal
class Dog(Animal):
def __init__(self, name, breed):
*super().__init__(name)* //**注意**:当子类定义init方法时,必须实现父类init的调用,将属性继承过来,这里name是父类属性
self.breed = breed
def speak(self): #注意:当子类和父类方法名嘴一样时,优先调用子类的
print("Dog is barking")
def wag_tail(self): #还可以添加方法
print("Dog is wagging its tail")
# 创建一个Dog对象
dog = Dog("嘟嘟", "灰色")
dog.speak()
#输出 Dog is barking
多继承
多继承指一个子类可以同时继承多个父类的特性。
# 定义一个父类Animal
class Animal:
def __init__(self, name):
self.name = name
def speak(self):
print("Animal is speaking")
# 定义一个父类Flyable
class Flyable:
def fly(self):
print("Flying high in the sky")
# 定义一个子类Bird,同时继承Animal和Flyable
class Bird(Animal, Flyable):
def __init__(self, name, species):
super().__init__(name)
self.species = species
def speak(self):
print("Bird is chirping")
# 创建一个Bird对象
bird = Bird("Sparrow", "Small Bird")
print(bird.name) # 输出:Sparrow
print(bird.species) # 输出:Small Bird
bird.speak() # 输出:Bird is chirping