python基础--面向对象之多态

Posted cong12586

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python基础--面向对象之多态相关的知识,希望对你有一定的参考价值。

# 多态是指一类事物有多种行态,
# 例如:动物有多种形态:人,狗,猫
# 他们有一些共同的特征:吃,喝,拉,撒
# 多态性是指在不考虑实例类型的情况下使用实例
# 对同一事物不同的类,对象有不同的响应,
# 例如:放假了,有的同学回家,有的去旅游,有的去兼职
#       有的在敲代码(就是我啦)
# 列表,字符串,字典都有len属性,但是是不同的执行过程。
class Animal():
    def talk(self):
        pass
class People(Animal):
    def __init__(self,name):
        self.name = name
    def talk(self):
        print("%s 说人话"%self.name)
class Cat(Animal):
    def __init__(self,name):
        self.name = name
    def talk(self):
        print("%s 说猫话"%self.name)
class Dog(Animal):
    def __init__(self,name):
        self.name = name
    def talk(self):
        print("%s 说狗话"%self.name)
peo = People(wang)
cat = Cat(cat)
dog = Dog(dog)
peo.talk()
cat.talk()
dog.talk()
# 多态性的函数
# 1,增加了程序的灵活性,
# 2,增加了程序的课扩展性
# 鸭子类型
# python崇尚鸭子类型,Python崇尚鸭子类型,即‘如果
# 看起来像、叫声像而且走起路来像鸭子,那么它就是鸭子’

# python程序员通常根据这种行为来编写程序。例如,如果想编
# 写现有对象的自定义版本,可以继承该对象

# 也可以创建一个外观和行为像,但与它无任何关系的全
# 新对象,后者通常用于保存程序组件的松耦合度。

 

以上是关于python基础--面向对象之多态的主要内容,如果未能解决你的问题,请参考以下文章

Python 基础之面向对象类的继承与多态

python必学的面向对象基础之继承静态与多态

面向对象之多态以及魔法函数

Python面向对象编程之继承与多态详解

python基础之面向对象高级编程

python基础篇第八篇面向对象(下)