JAVA基础知识
关于super
1、无参构造的时候,他会默认的使用super调用父类,调用父类的构造器的时候,必须要在子类构造器的第一行;
2、super只能出现在子类的方法或者构造方法中;
3、super和this不能同是调用构造方法,只能用一种;
4、this没有继承也能使用,super只能在继承条件下才可以使用;
this(); 本类构造;
super(); 父类调用;
方法的重写
a、方法名必须相同;b、参数列表必须相同;c、修饰符,范围可以扩大,不能缩小,private-protected-Default-public;D、抛出的异常,可以被缩小,但不能扩大;
1、重写是方法的重写,子类重写父类的方法,与属性无关;
2、父类的引用指向了子类;——方法的调用只与左边的有关;
3、重写不能是private;
静态的方法:方法的调用与左边的有关;
非静态的方法:子类重写父类的方法,就是子类的方法;
重写的意义:
1、父类的功能,子类不一定需要或不一定满足;
Alt+Insert;
多态
1、多态是方法的多态,属性没有多态;
2、父类和子类有联系 类型转换类型 ClassCastException;
3、存在的条件:继承方法,方法需要重写,父类引用指向子类对象
static 属于类,不属于常量不能重写
final 常量,不能重写;
private 私有方法,不能被重写;
1、当父类和子类都有相同的静态的方法的时候,引用的时候就看左边的是什么;
2、当子类与父类属于重写的关系,那么引用就执行子类的;
3、当子类有而父类没有的方法的时候,而new的父类的对象引用子类的方法的时候,可以用强转;
( (Teacher)t2).say();
say方法父类没有,而Teacher子类中有,父类的对象引用使用强转;