zl程序教程

您现在的位置是:首页 >  后端

当前栏目

Python面向对象编程-三大特性-多态

Python 特性 三大 多态 面向对象编程
2023-06-13 09:18:43 时间

多态是面向对象编程中的三大特性之一,它是指同一种行为具有多种不同的表现形式。在面向对象编程中,多态可以通过继承、接口、重载和重写等方式来实现。多态的主要目的是提高代码的可复用性、可扩展性和可维护性。

在Python中,多态主要是通过方法的重载和重写来实现的。方法的重载是指在同一个类中定义多个同名但参数列表不同的方法,这样可以根据传递的参数类型或数量来选择执行哪个方法。方法的重写是指在子类中重新定义父类中已有的方法,从而改变父类中该方法的行为。

以下是一个示例代码,演示了如何在Python中实现多态:

class Shape:
    def draw(self):
        pass

class Circle(Shape):
    def draw(self):
        print("Drawing Circle...")

class Square(Shape):
    def draw(self):
        print("Drawing Square...")

class Triangle(Shape):
    def draw(self):
        print("Drawing Triangle...")

shapes = [Circle(), Square(), Triangle()]

for shape in shapes:
    shape.draw()

在上面的示例中,我们定义了一个Shape类,并在其中定义了一个抽象方法draw。然后我们定义了三个子类Circle、Square和Triangle,分别重写了父类的draw方法,以实现各自不同的绘图行为。最后,我们创建了一个包含三个不同类型对象的列表,并使用一个循环遍历该列表,调用每个对象的draw方法,从而实现了多态。