(一)方法的覆写
(二)属性的覆写
(一)方法的覆写
- 子类定义了与父类方法名称、参数类型及个数完全相同的方法。但是被覆写不能够拥有比父类更为严 格的访问控制权限。
- 若父类中的方法属性为private,则子类中定义的同名方法不是覆写,因为子类中无法看到子类中的private方法。
- 修饰符范围由大到小排列:public > prodected >default > private
default包私有,不写的时候默认为default。 - 对父类的方法进行覆写——调用当前对象的方法,若是子类中没有定义,则在父类中取找,若父类中也没有该方法,则会报错。
- 浅蓝色文字
注意:
(1)你当前使用的对象是通过哪个类new的。
(2)当调用某个方法,如果该方法已经被子类所覆写了,那么调用的一定是被覆写过的方法。
(3)被覆写不能够拥有比父类更为严格的访问控制权限。
即子类覆写父类的方法时权限更为宽泛。
(4)如果现在父类方法使用private定义,子类中使用public重写的时候,不是方法的覆写,而是方法的重写。
- 建议:
(1)写方法的时候尽量使用public修饰符;
(2)写属性的时候尽量使用private修饰。
1,简单覆写方法的举例:
//主类
public class TestFatherAndSon{
public static void main(String[] args){
Person person = new Person();
person.