zoukankan      html  css  js  c++  java
  • 方法重写

    方法重写

    //重写都是方法的重写和属性无关
    public class B{
        
        public static void test(){
            System.out.println("B=>test()");
        }
    }
    
    public class A extends B{
        
        public static void test(){
            System.out.println("A=>test()")
        }
    }
    
    public class Application{
        //静态方法:方法的调用只和左边,定义的类有关
        public static void main(String[] args){
            A a=new A();
            a.test();
            
            //父类的引用指向子类
            B b=new A();
            b.test();
        }
    }
    //输出结果
    A=>test()
    B=>test()
    
    public class B{
        
        public void test(){
            System.out.println("B=>test()");
        }
    }
    
    public class A extends B{
        
        public void test(){
            System.out.println("A=>test()")
        }
    }
    
    public class Application{
        //非静态:重写
        public static void main(String[] args){
            A a=new A();
            a.test();
            
            
            B b=new A();//子类重写了父类的方法
            b.test();
        }
    }
    /*
    A=>test()
    A=>test()
    */
    

    Note

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

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

    重写:子类与父类的方法必要一致

    为什么要重写:

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

      Alt+Insert

  • 相关阅读:
    java native方法
    linux free命令
    gdb使用
    java锁——wait,notify,synchronized
    java面试——问题回溯
    (转)每天一个linux命令(44):top命令
    java面试——jvm
    java面试——多线程
    数据库面试总结
    CMakeLists.txt使用
  • 原文地址:https://www.cnblogs.com/FettersLove/p/13741452.html
Copyright © 2011-2022 走看看