0
点赞
收藏
分享

微信扫一扫

31、Java基础之方法的重写

逸省 2022-02-14 阅读 76

方法重写

注意:构造方法不能重写

  • 重写:需要有继承关系,子类重写父类的方法!
    1.方法名必须相同
    2.参数列表列表必须相同
    3.修饰符:范围可以扩大但不能缩小: public > Protected > Default > private
    4.抛出的异常: 范围,可以被缩小,但不能扩大; ClassNotFoundException > Exception(大)
  • 重写,子类的方法和父类必要一致;方法体不同!
  • 为什么需要重写:
    父类的功能,子类不一定需要,或者不一定满足!
  • Alt +Insert ; 快速添加 override;
  • 重写实例
    父类
public class FangFaChongXieFather {
    public static void test(){
        System.out.println("父类的静态方法");
    }

    public void test1(){
        System.out.println("父类的非静态方法");
    }
}

子类

public class FangFaCongXieSon extends FangFaChongXieFather{
    public static void test(){
        System.out.println("子类的静态方法");
    }
//    public void test1(){
//        System.out.println("子类的非静态方法");
//    }

    /**
     *  Override 重写
     *  @Override  注解  有功能的注释
     *
     *  使用  Alt + insert 默认生成的是 super.test1(); 就是默认重写父类的方法
     */
    @Override
    public void test1() {
//        super.test1();
        System.out.println("子类的非静态方法");
    }
}

main方法

public class C6FangFaDeChongXie {
    public static void main(String[] args) {
        /**
         *  静态方法的调用  只和左边有关 ,也就是只和声明的对象有关(不会重写)
         *
         *  非静态方法  重写之后,父类的引用指向子类的方法,
         *				就可以调用子类重写后的方法,但不能直接调用子类独有的方法
         */

        FangFaChongXieFather fFCXFather = new FangFaChongXieFather();
        fFCXFather.test();      //父类的静态方法
        fFCXFather.test1();     //父类的非静态方法
        System.out.println("========================");
        /**
         *  父类的引用指向了子类的方法
         */
        FangFaChongXieFather fFCXFather1 = new FangFaCongXieSon();
        fFCXFather1.test();      //父类的静态方法
        fFCXFather1.test1();      //子类的非静态方法


        System.out.println("========================");
        FangFaCongXieSon fFCXSon = new FangFaCongXieSon();
        fFCXSon.test();      //子类的静态方法
        fFCXSon.test1();      //子类的非静态方法


        /**
         *     子类的引用  无法指向父类
         */
//        FangFaCongXieSon fFCXSon1 = new FangFaChongXieFather();
//        fFCXSon1.test();
    }
}
举报

相关推荐

0 条评论