python的多态与抽象举例分析
发表于:2025-01-25 作者:千家信息网编辑
千家信息网最后更新 2025年01月25日,本篇内容主要讲解"python的多态与抽象举例分析",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"python的多态与抽象举例分析"吧!多态面向对象编程中多
千家信息网最后更新 2025年01月25日python的多态与抽象举例分析
本篇内容主要讲解"python的多态与抽象举例分析",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"python的多态与抽象举例分析"吧!
多态
面向对象编程中多态指的是一种数据类型有多种形态。
类示例:
class Animal:kind = '动物'def __init__(self, name):self.name = namedef eat(self):print(f'{self.name}正在进食!')class Cat(Animal):def __init__(self, name, count=0):self.count = count Animal.__init__(self, name)def work(self):print(f'猫咪"{self.name}"捉住了{self.count}只老鼠')class Dog(Animal):def __init__(self, name, count=0):self.count = count Animal.__init__(self, name)def work(self):print(f'猎狗"{self.name}"捉住了{self.count}只兔子')
上述案例种Animal类这种数据有2种形态,一是猫、二是狗。
多态的好处是可以统一接口,提高多人配合做大型项目时的工作效率。
统一接口示例:
def work(x, num):x.count += num x.work()white_cat = Cat('大白猫')balck_dog = Dog('老黑狗')work(white_cat, 2)work(balck_dog, 3)out:猫咪"大白猫"捉住了2只老鼠猎狗"老黑狗"捉住了3只兔子
讲解:
在多人配合的项目中:甲是项目规划师,他定义了Animal类;乙定义了Cat类、丙定义了Dog类,这时丁在代码中实例化Cat和Dog,要写有关Cat和Dog工作的代码,如果没有统一接口work函数,那么写起来会很麻烦,得针对不同的实例判断其类型再分别做处理。此时就可以运用多态的概念,甲写出统一接口,这样乙、丙、丁在写Cat、Dog实例工作时可以使用统一接口work函数。这样可以提高团队协作默契度,减少重复代码,提高代码可读性。
抽象
面向对象编程中抽象指的是一种特殊的类,抽象类不是用来实现功能的,而是用来规范子类方法名的。
类示例:
class WorkAnimal:def work(self):raise NotImplementedError('要工作的动物必须统一实现work方法!')
讲解:
可以看到WorkAnimal本身没有实现功能,只是用来提示所有写子类的程序员要统一子类的方法名。继续以上的案例,假设程序员丙写Dog类的时候没有遵循抽象类统一命名规范,他的代码如下:
class Dog(Animal, WorkAnimal):def __init__(self, name, count=0):self.count = count Animal.__init__(self, name)def catch(self):print(f'猎狗"{self.name}"捉住了{self.count}只兔子')
此时程序员丙和丁调用统一接口work函数就会报错。
完整代码如下:
class Animal:kind = '动物'def __init__(self, name):self.name = namedef eat(self):print(f'{self.name}正在进食!')class WorkAnimal:def work(self):raise NotImplementedError('要工作的动物必须统一实现work方法!')def work(x, num):x.count += num x.work()class Dog(Animal, WorkAnimal):def __init__(self, name, count=0):self.count = count Animal.__init__(self, name)def catch(self):print(f'猎狗"{self.name}"捉住了{self.count}只兔子')balck_dog = Dog('老黑狗')work(balck_dog, 3)out:NotImplementedError: 要工作的动物必须统一实现work方法!
到此,相信大家对"python的多态与抽象举例分析"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
统一
多态
代码
接口
方法
工作
动物
兔子
猎狗
分析
函数
子类
实例
示例
程序
程序员
项目
黑狗
内容
功能
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
CSCD是什么数据库的缩写
黎明杀机屠夫选哪个服务器
跟滴滴一样的软件开发多少钱
部队重视网络安全
软件开发最基础的工具
上位机可以用哪些软件开发
网络安全社会层面包括哪些
mysql数据库 有事务吗
网络安全自我保护意识征文
国家网信服务器安全测评
搞软件开发的想考研
软件开发师要会什么
服务器延迟0
华梦互联网科技有限公司
关联方交易软件开发
深圳正规软件开发哪家实惠
qt 动态封装连接数据库
分布式数据库性能测试要点
杭州ibm服务器维修
河北网络安全培训
绿书签手抄报网络安全内容
花生壳软件开发公司
奥克斯软件开发测试怎么样
网络技术安全与应用怎么样
幻塔抽卡概率哪个服务器大
酉阳网络安全审计系统咨询公司
服务器上面如何启动一个进程
网络安全技术与防火墙
服务器装了安全狗503了
服务器电源改成普通电源