Java编程思想笔记(八)—— 多态

本文探讨了面向对象编程中的多态特性,重点讲解向上转型、动态绑定、构造器调用顺序及协变返回类型等核心概念。通过实例解析多态在类关系中的作用,及其在实际编程中的应用与限制。
感悟

这章开始难度逐步提高,多态是面向对象的重要特质,后面你会发现,多态无处不在。关键在于理解向上转型。

笔记
  • 8.1 再论向上转型
    1)忘记对象类型
结合向上转型引出多态的概念
  • 8.2 转机
    1)方法调用绑定
    2)产生正确的行为
    3)可扩展性
    4)缺陷:“覆盖”私有方法
    5)缺陷:域与静态方法
理解多态的原理:动态绑定,多态的核心概念。
同时注意多态不能生效的地方。
  • 8.3 构造器和多态
    1)构造器的调用顺序
    2)继承与清理
    3)构造器内部的多态方法的行为
理解调用顺序,构造器是类似static。其他了解就好,正常一般不会用到。
  • 8.4 协变返回类型
导出类中的被覆盖方法可以返回基类方法的返回类型的某种导出类型
  • 用继承进行设计
    1)纯继承与扩展
    2)向下转型与运行时类型识别
理解is-like-a,向上转型时候,导出类自有的扩展接口会丢失。
使用向下转型,可以使用扩展接口,但是需要转型(运行时类型识别RTTI),转不对会抛ClassCastException。
  • 总结
多态是一种不能单独来看待的特性,只能作为类关系全景中的一部分,与其他特性协同工作。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值