封装、继承、多态
封装
- 提高程序的安全性,保护数据
- 隐藏代码的实现细节
- 统一接口
- 提高系统的可维护性
属性私有(privite),get/set。
继承
- super:调用父类的属性或方法。
- super调用父类的构造器,必须放在子类构造器的第一行。(不写的话默认调用)
- super必须只能出现在子类的方法或构造方法中。
- super和this不能同时调用构造方法。
- 与this的区别:
- 代表对象不同:
- this:本身调用者这个对象
- super:代表父类对象的应用
- 前提
- this:没有继承可以使用
- super:只能在继承条件才可以使用
- 构造方法
- this():本类的构造
- super():父类的构造
- 代表对象不同:
- 私有的东西是无法被继承的。
- 方法重写
- 需要有继承关系,子类重写父类的方法。
- 1.方法名必须相同。
- 2.参数列表必须相同。
- 3.修饰符:范围可以扩大,但不能缩小。public>protected>default>privite
- 4.抛出的异常:范围可以被缩小,但不能被扩大。例如:ClassNotFoundException-->Exception
- 重写,子类和父类的方法名必须一样,方法体可以不同。
- 需要有继承关系,子类重写父类的方法。
多态
- 一个方法可以根据发送对象的不同而采用多种不同的行为。
- 一个对象的实际对象是确定的,但可以指向对象的引用类型有很多。(父类或者有关系的类)
- 多态存在的条件
- 有继承关系
- 子类重写父类方法
- 父类引用指向子类对象
- 多态是方法的多态,属性没有多态性。
- instanceof 类型转换(引用类型)
- 子类能调用的方法,都是自己的或继承的。父类可以指向子类,但不能调用子类独有的方法。
instanceof和类型转换
- 父类引用指向子类对象。
- 把子类转换成父类,向上转型;
- 把父类转换成子类,向下转型:强制转换。(丢失一些子类独有的方法)
- 方便方法的调用,减少重复的代码。

浙公网安备 33010602011771号