Java方法的重写

Java方法的重写

重写:需要有继承关系,子类重写父类的方法!

  1. 方法名必须相同
  2. 参数列表列表必须相同
  3. 修饰符:范围可以扩大但不能缩小 public > protected > default > private
  4. 抛出的异常:范围可以被缩小,但不能扩大

重写,子类的方法和父类要一致,方法体不同!

为什么要重写:

  • 父类的功能,子类不一定需要,或者不一定满足!

    IDEA快捷键:Alt + insert :override;

package com.cnblogs;
//本类用于实现
public class Application {
    public static void main(String[] args) {
        //实例化父类
        Person person = new Person();

        //实例化子类
        Student stu = new Student();

        person.getName();//父类属性
        stu.getName();
        //子类属性
        //父类属性
    }
}

package com.cnblogs;
/*
person类
 */
public class Person {
    //父类属性
    private String name = "父类属性";
    //父类方法
    public void getName(){
        System.out.println(name);
    }
}

package com.cnblogs;
/*
student类
 */
public class Student extends Person{
    //子类属性
    private String name = "子类属性";
    //子类重写父类方法
    @Override
    public void getName() {
        System.out.println(name);
        //super关键字
        super.getName();
    }
}

总结:

重写的要求:两同两小一大
两同:方法名 参数列表 要完全一致
两小:
子类返回值类型小于等于父类的返回值类型(注意此处说的是继承关系,不是值大小)
子类抛出异常小于等于父类方法抛出异常
一大:子类方法的修饰符权限要大于等于父类被重写方法的修饰符权限

posted @ 2021-07-06 20:29  贪玩的阿柒  阅读(115)  评论(0编辑  收藏  举报