请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

多态的关键在于多,鸭子类型的又是啥?

以前学函数的时候,有一个局部变量,两个/多个函数用同一个名字的局部变量的名称,是没有影响的,只要不宣称成全部变量就OK。class也一样嘛,同个eat,在猫啊猪啊狗啊人啊的class中,都可以有方法eat,猪是站着吃饭,人是坐着吃饭,狗有时候是蹲着吃,这就是多态嘛。

当看到一只鸟走起来像鸭子、游泳起来像鸭子、叫起来也像鸭子,那么这只鸟就可以被称为鸭子。”这一段话的关键字是“像”,虽然是像,那肯定有一个标的,比如小明像他爸,那他爸就是标的,要首先找出他爸来,找不出他爸,一切白搭是不?

我理解是,奇迹来了,整个鸭子类型,和鸭子的形状没有关系,找比较的标的也没有,就是不同的对象,通过方法改造一下,然后大家看起来比较像?

若要用class,就要知道它的类型,有啥特性,对不上就要用魔法函数来改,

正在回答 回答被采纳积分+3

2回答

bobby 2020-07-22 14:42:21
  1. 上面理解的多态不准确, 你上面说的是封装和继承,不是多态,多态是 允许将子类类型的指针赋值给父类类型的指针,因为python是动态语言 就不受类型的限制,所以python语言没有多态-也可以说python是天然的多态

  2. 鸭子类型是说一个类是什么类型,不是看这个类继承了什么类,而是看这个类有什么方法

1 回复 有任何疑惑可以回复我~
东泽XD 2020-07-23 10:27:42

能像鸭子一样游泳就是鸭子

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信