Python如何多态
原创Python中的多态
Python 是一种动态类型语言,它支持多态的概念,多态是编程中的一个重要概念,它允许我们将子类的对象当作父类的对象来处理,在 Python 中,多态通常通过继承和接口实现。
继承
Python 中的类可以继承其他类,从而实现代码的复用和扩展,子类可以继承父类的属性和方法,并添加自己的属性和方法,这样,我们就可以使用子类对象来调用父类的方法,实现多态。
下面的代码中定义了一个父类Animal和一个子类Dog,Dog类继承了Animal类,并重写了speak()方法。
class Animal: def speak(self): print("Animal is speaking") class Dog(Animal): def speak(self): print("Dog is barking") 创建一个Dog对象 dog = Dog() 调用speak()方法,输出Dog is barking dog.speak()
接口
除了继承外,Python 中的多态还可以通过接口实现,接口是一种定义方法但不实现具体实现的机制,子类必须实现接口中定义的所有方法,这样我们就可以将子类对象当作接口对象来处理。
下面的代码中定义了一个接口Animal和一个实现该接口的类Dog,Dog类实现了Animal接口中的speak()方法。
from abc import ABC, abstractmethod class Animal(ABC): @abstractmethod def speak(self): pass class Dog(Animal): def speak(self): print("Dog is barking") 创建一个Dog对象 dog = Dog() 调用speak()方法,输出Dog is barking dog.speak()
是 Python 实现多态的两种方式:继承和接口,在实际编程中,我们可以根据具体需求选择使用哪种方式来实现多态。
上一篇:如何更新 python 下一篇:如何入手python