java编程思想(六)总结

白昼怎懂夜的黑 提交于 2019-12-06 13:21:29

第七章 多态

7.1 多态与封装

多态是分离“做什么”和“怎么做”,即接口与实现分离,消除类型之间的耦合性

封装是合并特征和行为来创建新的数据类型

 

7.2 向上转型和向下转型

向上转型即导出类实例转化为基类实例,由于只能调用与基类公共的方法,可能会缩小“接口”。

向下转型即基类实例转化为导出类实例,由于java采用后期绑定策略,因此只有在运行阶段才知道是否能正确转化,因此存在风险。

 

7.3 转机

前期绑定:由编译器和连接程序实现。

后期绑定:运行时根据对象类型进行绑定。

Java除了static和final方法(private)之外,其他方法均属于后期绑定。

Private方法默认是final,对导出类是屏蔽的,因此不能被覆盖

 

7.4 抽象类和抽象方法

抽象类一般表示所有导出类的共同部分,抽象类不存在实例对象

 

7.5 构造器的调用顺序

1.基类构造器

2.组合(属性初始化)

3.自身构造

清理的调用顺序相反

 

7.6用继承进行设计

除非为了表示父子类关系,即xx是一种xx或者向上转型,一般选择组合

用继承表达行为间的差异,用组合表达状态的变化

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!