《Java编程思想》第四版 摘抄笔记4 - 多态

读在前面:以下文章来自《Java编程思想》第四版 摘抄笔记,感兴趣的可以读一下《Java编程思想》这本书,非常不错,受益匪浅。感谢本书的作者以及译者。

(1)多态通过分离做什么和怎么做,从另一角度将接口和实现分离开来(基类中方法不动,只修改导出类覆盖基类的方法体就可以了)。多态不但能够改善代码的组织结构和可读性,还能够创建可扩展的程序–即无论在项目最初创建时还是在需要添加新功能时都可以“生长”的程序。

(2)“封装”通过合并特征和行为来创建新的数据类型。“实现隐藏”则通过将细节“私有化”把结构和实现分离开来。

(3)多态的作用是消除类型之间的耦合关系。

(4)前期绑定:在程序执行前进行绑定。

(5)后期绑定:在运行时根据对象的类型进行绑定。后期绑定也叫做动态绑定或运行时绑定。Java中除了static方法和final方法之外(private方法被自动认为是final方法,不允许被覆盖),其他所有的方法都是后期绑定。这意味着通常情况下 ,我们不必判定是否应该进行后期绑定,他会自动发生。Final修饰的方法是不允许覆盖的。

(6)如果一种语言想实现后期绑定,就必须具有某种机制,以便在运行时能 判断对象的类型,从而调用恰当的方法。也就是说,编译器一直不知道 对象的类型,但是方法调用机制能找到正确的方法体,并加以调用。

(7)List a = new ArrayList(); //这里就是用到了向上转型、多态(后期绑定),多态就是使用后期绑定来实现的。多态的扩展通俗的讲就是方法覆盖。(注意重载不是多态)复写基类的方法才是多态的表现。

(8)静态方法不具有多态特性。

(9)构造器中调用类方法一定要谨慎,或者不允许在类的构造器中调用类的 方法。

(10)协变返回类型:它表示在导出类中的被覆盖方法可以返回基类方法的返回类型的某种导出类型。

(11)创建一个能够根据所传递的参数对象的不同而具有不同行为的方法,被称为策略设计模式 。多态就是策略模式。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值