Python中面向对象编程:继承与多态实践案例

原创 r囧r小猫 2025-01-27 02:03 66阅读 0赞

在Python中,面向对象编程(Object-Oriented Programming, OOP)是实现程序模块化和复用的关键。这里我们将重点介绍继承和多态的实践案例。

  1. 继承(Inheritance)

继承是子类自动获得父类所有属性和方法的过程。Python中的继承语法如下:

  1. class ParentClass:
  2. # 父类代码
  3. class ChildClass(ParentClass):
  4. # 子类代码,可以覆盖或扩展父类的方法
  1. 多态(Polymorphism)

多态是指一个接口或者抽象类可以被不同的子类重写,并在父类中调用这些重写的子类方法。

Python中的多态实践案例:

  1. # 定义父类
  2. class Animal:
  3. def __init__(self, name):
  4. self.name = name
  5. # 父类方法
  6. def speak(self):
  7. return f"{self.name} speaks."
  8. # 子类一(鸟)
  9. class Bird(Animal):
  10. def __init__(self, name, can_fly=True):
  11. super().__init__(name)
  12. self.can_fly = can_fly
  13. # 子类方法
  14. def speak(self):
  15. return f"{self.name} says {super().speak()} and can fly if able."
  16. # 子类二(狗)
  17. class Dog(Animal):
  18. def __init__(self, name, can_bark=True):
  19. super().__init__(name)
  20. self.can_bark = can_bark
  21. # 子类方法
  22. def speak(self):
  23. return f"{self.name} barks {super().speak()}."
  24. # 父类方法调用多态
  25. animal_list = [Bird("sparrow"), can_fly=False), Dog("Rex", can_bark=True)]
  26. for animal in animal_list:
  27. print(animal.speak())

上述例子中,我们定义了父类Animal和两个子类BirdDog。通过继承和多态的特性,不同类型的动物在调用speak()方法时表现出了不同的行为。

文章版权声明:注明蒲公英云原创文章,转载或复制请以超链接形式并注明出处。

发表评论

表情:
评论列表 (有 0 条评论,66人围观)

还没有评论,来说两句吧...

相关阅读