📅  最后修改于: 2023-12-03 15:34:31.366000             🧑  作者: Mango
在Python中,继承是面向对象编程的一个重要特性。继承指的是一个类可以从另一个类中继承属性和方法。这有助于避免代码重复,提高代码复用性和可维护性。
Python中继承的语法如下所示:
class BaseClass:
# 基类/父类/超类
pass
class DerivedClass(BaseClass):
# 派生类/子类
pass
其中,BaseClass
是基类/父类/超类,DerivedClass
为派生类/子类。在括号中写上要继承的基类的名称即可实现继承。
class Animal:
def __init__(self, name):
self.name = name
def move(self):
print(f"{self.name} can move.")
class Dog(Animal):
def __init__(self, name):
super().__init__(name)
def bark(self):
print(f"{self.name} can bark.")
class Bird(Animal):
def __init__(self, name):
super().__init__(name)
def fly(self):
print(f"{self.name} can fly.")
class Penguin(Bird):
def __init__(self, name):
super().__init__(name)
def fly(self):
print(f"{self.name} cannot fly.")
if __name__ == '__main__':
dog = Dog("Snoopy")
bird = Bird("Tweety")
penguin = Penguin("Pingu")
dog.move()
dog.bark()
bird.move()
bird.fly()
penguin.move()
penguin.fly()
输出结果为:
Snoopy can move.
Snoopy can bark.
Tweety can move.
Tweety can fly.
Pingu can move.
Pingu cannot fly.
在这个示例代码中,我们定义了一个父类Animal
,它包含一个move
方法。然后,我们定义了两个子类Dog
和Bird
,它们分别继承了Animal
类,并分别新增了一个bark
和一个fly
方法。最后,我们定义了一个Penguin
类,它继承了Bird
类,并重写了fly
方法。在程序运行时,我们创建了一个Dog
对象,一个Bird
对象和一个Penguin
对象,它们分别调用了它们自己的方法。