【python】多态和鸭子类型

多态

面向对象编程的编程思想精髓:封装,继承,多态

在编程语言中,多态是指为不同数据类型的实体提供统一的接口,同一个行为具有多个不同表现形式或形态,比如同一个接口,使用不同的实例会执行不同的操作。

Java中的多态

java中无法实现多继承,java多态的实现方式:

  • 重写
  • 接口
  • 抽象类和抽象方法

鸭子类型

当看到一只鸟走起来像鸭子、游泳起来像鸭子、叫起来也像鸭子,那么这只鸟就可以被称为鸭子

鸭子类型(duck typing)是动态类型的一种风格。在这种风格中,一个对象有效的语义,不是由继承自特定的类或实现特定的接口,而是由当前方法和属性的集合决定。

子类对象不由其所继承的父类决定,而是由子类的方法决定。
Python中的魔法函数就是鸭子类型的范例,比如我们实现一个序列类,我们不用继承实现序列的父类对象,而直接实现__getitem__方法即可。

posted @   倒骑驴子  阅读(74)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示