Java泛型机制-潜在类型机制(结构化类型机制,通俗称为鸭子类型机制)

本文有待考虑,有的书上说,Java是不支持潜在类型机制的,但泛型本身个人就理解为是支持潜在类型机制的。Java的泛型,是不能从继承的角度进行考虑泛型本身的。(这是我读Java编程思想,与作者的观点不尽相同的。Java编程思想是通过继承体系去讲解泛型的,泛型的前半部分我读的云里雾里的,直到潜在类型机制的概念的出现,我感觉开头作者讲解的泛型的出发点似乎有点自相矛盾。Java编程思想认为,泛型在使用的时候,即便使用父类也不会做类型校验,是Java实现上的问题。而我反而觉着这正是Java的泛型的设计思想上的特殊之处,非继承体系,虽然这可能与Java是继承这个特性相违背的)

欢迎讨论。本人菜鸟,请勿拍砖,拍砖者好走不送

 

鸭子类型机制:如果它看起来像鸭子,叫起来像鸭子,就认为它是鸭子。(不管它到底是不是鸭子,只要它有鸭子的特征,就把它看做鸭子对待)。

潜在类型机制:不显示地判断,校验类型,如果它有我认为那个类型所应该有的特征,那么我就认为它的类型就是那个潜在该拥有这个特征的类型。

结构化类型机制:非继承类型机制。通过判断是否有对应的方法,而非继承某个接口或父类去推测类型。

潜在类型机制,可以使代码脱离继承体系,进行类型的判断。从而使代码脱离父类或接口而被应用到其他环境中,进而写出更加泛化的代码。比如 一个对象有speak() ,sit() 就认为是鸭子,所以只要把一个对象

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

水上冰石

希望能帮助到你

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值