• Day09_面向对象 方法重写


    方法重写

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

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

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

    为什么要重写:

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

      Alt + Insert:Override;

    静态方法

    package com.oop.Demo05;
    
    public class B {
        public static  void test(){
            System.out.println("B->test()");
        }
    }
    
    package com.oop.Demo05;
    
    public class A extends B{
        public static void test(){
            System.out.println("a->test()");
        }
    }
    
    package com.oop;
    
    
    import com.oop.Demo05.A;
    import com.oop.Demo05.B;
    
    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()
    
    Process finished with exit code 0
    

    非静态方法

    package com.oop.Demo05;
    
    //重写都是方法的重写,和属性无关
    public class B {
        public void test(){
            System.out.println("B->test()");
        }
    }
    
    package com.oop.Demo05;
    
    //继承
    public class A extends B{
        //Override 重写
        @Override   //注解:有功能的注释!
        public void test() {
            System.out.println("A->test()");
        }
    }
    
    package com.oop;
    
    
    import com.oop.Demo05.A;
    import com.oop.Demo05.B;
    
    public class Application {
        //非静态:重写
        public static void main(String[] args) {
    
            A a = new A();
            a.test();
    
            //父类的引用指向了子类
            B b = new A();//子类重写了父类的方法
            b.test();//B
        }
    }
    
  • 相关阅读:
    Centos 7.X 安装JDK1.8
    CentOS 7.X 搭建时间服务器 --- chrony
    CentOS 7.X 设置系统时间
    CentOS 7.X 关闭SELinux
    C11工具类:时间处理
    C11内存管理之道:智能指针
    C11性能之道:标准库优化
    C11性能之道:转移和转发
    C11性能之道:右值引用
    C11简洁之道:tupe元祖
  • 原文地址:https://www.cnblogs.com/lemonlover/p/14037628.html
Copyright © 2020-2023  润新知