编程自学网编程自学网编程自学网

python中多态和多态性的理解

作者:小白jiang

python面向对象有三特征:继承、封装、多态

多态怎么理解?

一类事物,有多种形态,比如动物类,可以有猫、狗、鸡。一个抽象类有许多子类
# 作者:小白jiang
class Animal(object):
    def talk(self):
        pass

class Cat(Animal):  # 动物的形态一:猫
    def talk(self):
        print('这是猫')

class Dog(Animal):  # 动物形态二:狗
    def talk(self):
        print('这是狗')

class Chicken(Animal):  # 动物的形态三:鸡
    def talk(self):
        print('这是鸡')

多态性怎么理解?

不同功能的函数使用同样的函数名,上面代码中,三个形态(猪、狗、鸡)都有talk函数,但是执行的行为不是相同的,分别打印:这是猪、这是狗、这是鸡。

比如:下课铃响了,对于学生来说是放学操作,对于老师来说是下班操作。


多态性的好处:

1、增加了程序的灵活性,以不变应万变

2、增加了程序额可扩展性,通过继承animal类创建了一个新的类,使用者无需更改自己的代码


未经允许不得转载:编程自学网 » python中多态和多态性的理解