zoukankan      html  css  js  c++  java
  • Java静态方法能否被继承?

    Java静态方法能否被继承

    1、结论

    结论是Java的静态方法和静态属性都可以被继承,但是他们不可以被重写(Overwrite)。

    2、原因

    • 静态方法和静态属性是属于类的,不是属于对象的。
    • 不可以被重写,也就不能实现多态
    • 如果在子类中定义和父类一模一样的静态方法或静态属性,父类的静态方法和静态属性会被屏蔽

    3、代码分析

    public class Main {
        public static void main(String[] args) {
            B b = new B();
            b.staticMethod(); // B静态方法
    
            A a = b;
            a.staticMethod(); // A静态方法
    
            C c = new C();
            c.staticMethod(); // A静态方法
    
        }
    }
    
    class A { //父类
        public static void staticMethod() {
            System.out.println("A静态方法");
        }
    }
    
    class B extends A {
        public static void staticMethod() {
            System.out.println("B静态方法");
        }
    }
    
    class C extends A {
    }
    
  • 相关阅读:
    ExIco应用程序图标保存器1.0发布
    Object.defineProperty
    es6代理 proxy 学习
    node js学习记录
    css默认值列表
    关于 keyup keydown keypress
    转载一篇关于css选择器的,很透彻
    ......图片上传
    mimi
    css 开发心得
  • 原文地址:https://www.cnblogs.com/doubest/p/12803088.html
Copyright © 2011-2022 走看看