继承的本质是对一批类的抽象,从而实现对现实世界更好的建模。
extands的意思是扩展。子类是父类的扩展
JAVA中 类只要单继承,没有多继承
继承是类和类自己的一种关系,除此之外,类和类之间的关系还有依赖,组合 聚合等
继承关系的两个类,一个为子类(派生类),一个为父类(基类),子类继承父类,使用关键字extands来表示。
子类和父类之间,从意义上来说应该具有“is.a”的关系
在java中 所有的类,都默认直接或者间接继承Object,
super注意点
1.super调用父类的构造方法,必须在构造方法的第一个
2. super必须只能出现在子类的方法或者构造方法中!
3.super和this 不能同时调用构造方法!
super和this的对比
1.代表的威胁不同
this :本事调用者这个对象
super :代表父类对象的应用
前提
this 没有继承也可以使用
super 只能在继承条件才可以使用
构造方法
this (); 本类的构造
super(): 父类的构造
重写:
1.需要有继承关系,子类重写父类的方法 !
2.方法名必须相同
2.参数列表必须相同
3.修饰符 :范围可以扩大:public > Protected >Default > private
4.抛出的异常:范围,可以被缩小,但不能被扩大 :ClassNotFoundException-->Exception(大)
重写 简单说就是 子类的方法必须和父类一致,只是方法体不同
思考为什么需要重写?
1.父类的功能,子类不一定需要或者不一定满足
快捷键 ALT+INS 然后选中OVERRIDE
多态注意事项
1.多态是方法的多态,属性没有多态
2. 父类和子类 有联系 类型转换异常 ! ClassCastxException!
3. 存在的条件 :继承关系, 方法需要重写 ,父类引用指向子类对象 !