Python----多态

1、什么是多态

多态指的是一类事物有多种形态。

定义:多态是一种使用对象的方式,子类重写父类方法,调用不同子类对象的相同父类方法,可以产生不同的执行结果。

① 多态依赖继承

② 子类方法必须要重写父类方法

首先定义一个父类,其可能拥有多个子类对象。当我们调用一个公共方法时,传递的对象不同,则返回的结果不同。

好处:调用灵活,有了多态,更容易编写出通用的代码,做出通用的编程,以适应需求的不断变化!

2、多态原理图

公共接口service就是多态的体现,随着传入水果对象的不同,能返回不同的结果。

3、多态代码实现

多态:可以基于继承也可以不基于继承


class Fruit(object):

公共方法

def makejuice(self):

print('i can make juice')

class Apple(Fruit):

def makejuice(self):

print('i can make apple juice')

class Banana(Fruit):

def makejuice(self):

print('i can make banana juice')

class Orange(Fruit):

def makejuice(self):

print('i can make orange juice')

class Peach(Fruit):

def makejuice(self):

print('i can make peach juice')

定义公共方法如service

def service(obj):

obj.makejuice()

apple = Apple()

banana = Banana()

orange = Orange()

for i in (apple, banana, orange):

service(i)


相关推荐
蓝天守卫者联盟12 分钟前
如何选择二氯甲烷回收设备厂家:技术路线与市场格局深度解析
大数据·人工智能·python·sqlite·tornado
蓝色的杯子14 分钟前
Python面试30分钟突击掌握
python
qq_208154088535 分钟前
瑞树6代流程分析
javascript·python
上海合宙LuatOS40 分钟前
LuatOS扩展库API——【exremotecam】网络摄像头控制
开发语言·网络·物联网·lua·luatos
好运的阿财44 分钟前
大模型热切换功能完整实现指南
人工智能·python·程序人生·开源·ai编程
feng_you_ying_li1 小时前
C++11,{}的初始化情况与左右值及其引用
开发语言·数据结构·c++
爱码小白1 小时前
数据库多表命名的通用规范
数据库·python·mysql
xiaotao1311 小时前
JS new 操作符完整执行过程
开发语言·前端·javascript·原型模式
TE-茶叶蛋1 小时前
结合登录页-PHP基础知识点解析
android·开发语言·php
无巧不成书02181 小时前
Java包(package)全解:从定义、使用到避坑,新手零基础入门到实战
java·开发语言·package·java包