python 面向对象三大特性--多态

一、什么是多态?

  多态:一种事物有多重形态(如:救护车出发,医生护士是救人操作,伤者是等待被救操作,虽然两个人听到身影都是一样的,但是执行的效果不一样。)

 1 import abc
 2 class Animal(metaclass=abc.ABCMeta):#同一类事物:动物
 3     @abc.abstractstaticmethod
 4     def talk(self):
 5         pass
 6     
 7 class People(Animal):#
 8     def talk(self):
 9         print('say hello')
10     
11 class Dog(Animal):#
12     def talk(self):
13         print('say wawa')
14 
15 class Pig(Animal):#
16     def talk(self):
17         print('say o o ')

二、鸭子类型

  python崇尚鸭子类型,即‘如果看起来像,叫声像而且走起路来像鸭子,那么它就是鸭子’

    python程序员通常根据这种行为来编写程序。例如:如果想编写现有对象的自定义版本,可以继承该对象也可以创建一个外观和行为像,但与它无任何关系的全新对象,后者通常用于保存程序组件的松耦合度。

原文地址:https://www.cnblogs.com/liubiaos/p/9293277.html