20155314 2016-2017-2 《Java程序设计》第4周学习总结
教材学习内容总结
- 理解封装、继承、多态的关系
- 理解抽象类与接口的区别
- 掌握S.O.L.I.D原则
- 了解模式和设计模式
- 能正确覆盖方法
- 了解垃圾回收机制
- 掌握Object类
- 掌握enum
get到的重点
第六章 继承与多态
- 相关概念:
- 继承:避免多个类间重复定义共同行为
- 子类与父类:
- 父类:
- 对有着共同特性的多类事物,进行再抽象成一个类,这个类就是多类事物的父类
- 父类的意义在于可以抽取多类事物的共性
- 子类既可以是一个子类,也可以是一个父类;父类既可以是一个父类,也可以是一个子类
- 在Java中只有单一继承,即子类只能继承一个父类
- 子类与父类间会有is-a的关系(子类 is a 父类)
- 父类:
- is-a
- 多态:
- 继承可以复用代码,更大的用处是实现「多态」
- 封装是继承的基础,继承是多态的基础
- 「用父类声明对象引用,用子类生成对象」就有了多态
- 覆盖:子类中有和父类中可访问(可继承到子类)的同名同返回类型同参数表的方法,就会覆盖从父类继承来的方法
- 抽象方法、抽象类:
- Java中有抽象方法的类一定是抽象类,但抽象类中的方法不一定都是抽象方法
- 抽象类不能使用
new
生成对象
- 关键字:
-
extends
:- 继承父类的行为,再扩充父类原本没有的行为
- 继承时使用
extends
关键字,private
成员也会被继承,但子类无法直接存取,必须通过父类提供的方法来存取(父类愿意提供访问方法的话)
-
权限关键字:
public
:权限最大protected
:被声明为protected
的成员,相同包中的类可以直接存取,不同包中的类可以在继承后的子类直接存取-
private
:权限最小但实际上有四个权限范围(未定义权限关键字时默认为包范围):
|关键字 | 类内部| 相同包类|不同包类|
| -------- | :----------------
-