第一类多态:

from cat import Cat

from mouse import Mouse

from person import Person

'''

多态:一种事物的多种形态

最终目标:人可以喂任何一种动物

'''

tom = Cat("tom")

jerry = Mouse("jerry")

tom.eat()

jerry.eat()

#思考:在添加100种动物,也都有name属性和eat方法

#定义了一个有name属性和eat方法的Animal类,让所有的动物类都继承自Animal

#定义一个人类,可以喂猫和老鼠吃东西

per = Person()

#per.feedCat(tom)

#per.feedMouse(jerry)

#思考:人要喂100种动物,难道要写100个feed方法吗??

#tom和jerry都继承自动物

per.feedAnimal(tom)

per.feedAnimal(jerry)

第二类cat:

from animal import Animal

class Cat(Animal):

def __init__(self, name):

#self.name = name

super(Cat, self).__init__(name)

# def eat(self):

# print(self.name + "吃")

第三类mouse:

from animal import Animal

class Mouse(Animal):

def __init__(self, name):

#self.name = name

super(Mouse, self).__init__(name)

# def eat(self):

# print(self.name + "吃")

第四类animal:

class Animal(object):

def __init__(self, name):

self.name = name

def eat(self):

print(self.name + "吃")

第五类person:

class Person(object):

'''

def feedCat(self, cat):

print("给你食物")

cat.eat()

def feedMouse(self, mouse):

print("给你食物")

mouse.eat()

'''

def feedAnimal(self, ani):

print("给你食物")

ani.eat()

python多态_python 多态相关推荐

  1. python多态_Python 多态与抽象类

    一.多态 1.1 什么是多态 多态也称"多态性",指的是同一种类型的事物,不同的形态. 在python中的多态指的是让多种类若具备类似的数据属性与方法属性,都统一好命名规范,这样可 ...

  2. python多态_python多态和规范

    python规范(接口类) 接口类可以规范代码,但接口类本身是不实现的 class Payment: def pay(self,money): raise Notlmplemented class W ...

  3. python多态_Python多态

    面向对象三大特性 封装 根据 职责 将 属性 和 方法 封装 到一个抽象的 类 中 定义类的准则 继承 实现代码的重用,相同的代码不需要重复的编写 设计类的技巧 子类针对自己特有的需求,编写特定的代码 ...

  4. python 多态_Python中的多态

    面向对象的语言有四个特性,抽象.封装.继承和多态.在之前的文章中,给小伙伴们已经讲解了前三个.为什么要把多态放在最后一个讲呢?因为前面的三个特性是多态的基础,了解了前三个,了解多态就很容易啦~ 那么, ...

  5. 浅谈python使用多态跟不用多态的区别_python 多态和 super 用法

    python 中的多态实现非常简单,只要是在子类中实现和父类同名的方法,便能实现多态,如果想在子类中调用父类的方法,有多种方法,但是当涉及菱形继承等问题是,super 就成为了比较好的解决方案. 普通 ...

  6. python中的多态用法_Python面向对象之多态原理与用法案例分析

    本文实例讲述了Python面向对象之多态原理与用法.分享给大家供大家参考,具体如下: 目标 多态 面向对象三大特性 封装 根据 职责 将 属性 和 方法 封装 到一个抽象的 类 中 定义类的准则 继承 ...

  7. python继承和多态心得_python学习第十五天 -面向对象之继承和多态

    大家都知道面向对象的三大特性:封装,继承,多态.封装特性在上一章节已经讲解过.这一章节主要讲解继承和多态. 继承:当定义一个类的时候,可以从现有的类进行继承.那么新定义的类可以称为子类,被继承的现有的 ...

  8. python封装继承多态_Python:封装、继承、多态、私有成员

    Python作为一种面向对象语言,也有着面向对象的三种特性:封装.继承.多态. 封装: 将事物相关的属性和方法封装在某一个类里面,使得在调用类创建实例时,可以不用关心类内部的实现细节. 类的本质: 1 ...

  9. python中的多态是什么_Python中的多态

    python中的多态是什么 Polymorphism is a concept of Object Oriented Programming, which means multiple forms o ...

最新文章

  1. 【Laravel-海贼王系列】第九章, Events 功能解析
  2. 支付宝蚂蚁森林合种树,2-4天领证,1/2号车满员,3号车成立
  3. 「模型训练」如何迁移学习一个小网络到移动端
  4. android透明像素效率,android-非透明像素上的ImageView ColorFilter.夹
  5. 数的划分(信息学奥赛一本通-T1304)
  6. 泛型类 0104 c#
  7. jquery-自定义通用方法-jquery通用方法-所有对象的通用方法
  8. 比尔盖茨 27 年婚姻破裂,8000 亿财产咋分配?
  9. 广东机电职业技术学校计算机怎么样,广东机电职业技术学院宿舍怎么样 住宿条件好不好...
  10. 蓝桥杯 ALGO-5 算法训练 最短路
  11. Javascript iframe交互并兼容各种浏览器的解决方案
  12. python 防破解_Python 程序员如何防止数据被修改?
  13. php中mysql_affected_rows()更新记录返回0_php中mysql_affected_rows()返回-1帶來的“陷阱” | 學步園...
  14. 分布式ID生成之雪花算法
  15. QLineEdit用正则表达式限制double类型输入,double转为9位小数的字符串
  16. [Windows小工具]两款屏幕取色拾色器(免安装,1MB左右大小)
  17. jetson nano 自动调节风扇转速
  18. 美国低速自动驾驶在公共交通应用详解 | 自动驾驶系列
  19. Python爬取腾讯招聘信息
  20. Layer Tree 绘制

热门文章

  1. 蒙特卡洛梯度估计方法(MCGE)简述
  2. python——LeetCode刷题
  3. obs 推流编码在哪设置_OBS录屏软件
  4. 汉语是什么_为什么出国留学以及工作要考国际汉语教师资格证?
  5. 程序员学习网站备份(小众+不定时更新ing...)建议收藏
  6. HttpClient工具类
  7. 18款帝豪gl车机升级_好看又实用的2018款帝豪GL分享,感受它的魅力
  8. linux declare大小写,关于linux:将用户输入转换为大写
  9. C#——《C#语言程序设计》实验报告——面向对象程序设计——自动出题判分小程序
  10. Visual C++——《可视化编程技术》实验报告——资源的应用—反弹的球