• java 中方法的重写


    1,新建Application类,作为程序的入口

    package oop.demo05;
    
    //继承
    public class Application {
        public static void main(String[] args) {
    /**
     * 静态方法与非静态方法区别很大
     *      静态方法:方法的调用只与左边定义的数据 类型,有关
     *      非静态方法: 重写;
     */
            System.out.println("============方法的重写============");
            A a = new A();
            a.test(); //A===>test()
            a.test2();//B===>test2()
    //        父类的引用指向了子类;B 指向 A
            B b = new A();
            b.test();//B===>test()
            a.test2();//B===>test2() //子类重写父类的方法
        }
    }
    
    

    2,新建A类 (A类继承B类)

    package oop.demo05;
    
    import javax.swing.plaf.PanelUI;
    
    // 继承B类
    public class A extends  B{
        public  static void test(){
            System.out.println("A===>test()");
        }
    
    // Override 重写
        @Override
        public void test2() {
    //        super.test2(); //默认调用父类
    //        可重写自己的方法
            System.out.println("B===>test2()");
        }
    }
    
    

    3,新建B类

    package oop.demo05;
    //重写都是方法的重写,与属性无关
    public class B {
        public  static void test(){
            System.out.println("B===>test()");
        }
    
        public   void test2(){
            System.out.println("B===>test2()");
        }
    
    }
    
    

    4,方法的重写 笔记

    ## 重写
        需要有继承关系,子类重写父类的方法
            1,方法名必须相同
            2,参数列表必须相同(如果不同的话,就变成重载了)
            3,修饰符:范围可以扩大,但不能被缩小 public>protected>default>private
            4,抛出的异常:范围可以被缩小,但不能被扩大
        重写,子类与父类的方法名必须要一致,方法体不同
    

    5,运行结果

  • 相关阅读:
    Make a web page as screensaver
    python写入sqlserver中文乱码问题
    单片机中的ROM,RAM和FLASH的作用
    单片机STM32F4系统内部中断和外部中断优先级问题
    单片机AHB和APB
    嵌入式编程中一些常用的转换函数
    'AVStream::codec': 被声明为已否
    Python安装Python_snappy安装失败
    .net core 数据库问题
    .net 5.0 中 CrystalQuartz 增加授权校验
  • 原文地址:https://www.cnblogs.com/d534/p/15093873.html
Copyright © 2020-2023  润新知