Python如何多态

原创
admin 9小时前 阅读数 4 #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
作者文章
热门
最新文章