首页 > 其他分享 >重写

重写

时间:2023-02-27 23:57:27浏览次数:26  
标签:子类 base andy test 重写 public

重写

package com.andy.base.oop.demo01.demo05;

public class A extends B {
    @Override//注解:有功能的注释!
    public void test() {
        System.out.println("A=>test()");
    }
}

/*
 public static void main(String[] args) {

        //静态方法和非静态方法区别很大!
        //非静态:重写

        //方法的调用只和左边定义的数据类型有关
        A a = new A();
        a.test(); //A

        //父类的引用指向了子类
        B b = new A(); //子类重写了父类的方法
        b.test();//B


    }
 */
package com.andy.base.oop.demo01.demo05;

//重写都是方法的重写,和属性无关
public class B {

    public  void test(){
        System.out.println("B=>test()");
    }
}

main:

package com.andy.base.oop.demo01;


import com.andy.base.oop.demo01.demo05.A;
import com.andy.base.oop.demo01.demo05.B;

public class Application {
    public static void main(String[] args) {

        //静态方法和非静态方法区别很大!
        //非静态:重写

        //方法的调用只和左边定义的数据类型有关
        A a = new A();
        a.test(); //A

        //父类的引用指向了子类
        B b = new A(); //子类重写了父类的方法
        b.test();//B


    }
}

重写:需要有继承关系,子类重写父类的方法!
    1.方法名必须相同
    2.参数列表必须相同
    3.修饰符:范围可扩大但不能缩小:public>protected>Default>private
    4.抛出的异常:范围可以被缩小但不能扩大;  ClassNotFoundException<-- Exception

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

为什么要重写:
   1.父类的功能,子类不一定需要,或者不一定满足!
   alt+insert ; override;

标签:子类,base,andy,test,重写,public
From: https://www.cnblogs.com/zhongjianYuan/p/17162408.html

相关文章