加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 是否继承了静态变量

发布时间:2020-12-15 07:37:56 所属栏目:Java 来源:网络整理
导读:我已经读过1000个位置的静态变量没有被继承.但那么这段代码如何正常工作呢? Parent.java public class Parent { static String str = "Parent"; } Child.java public class Child extends Parent { public static void main(String [] args) { System.out.p
我已经读过1000个位置的静态变量没有被继承.但那么这段代码如何正常工作呢?

Parent.java

public class Parent {
        static String str = "Parent";
    }

Child.java

public class Child extends Parent {
        public static void main(String [] args)
        {
            System.out.println(Child.str);
        }
    }

此代码打印“父”.

还可以在几个位置读取数据隐藏的概念.

Parent.java

public class Parent {
    static String str = "Parent";
}

Child.java

public class Child extends Parent {
    static String str = "Child";

    public static void main(String [] args)
    {
        System.out.println(Child.str);
    }
}

现在输出是“Child”.

那么这是否意味着静态变量是继承的,但它们遵循数据隐藏的概念?

解决方法

请查看oracle: http://docs.oracle.com/javase/specs/jls/se8/html/jls-8.html#d5e12110的文档

静态变量是继承的,只要它们不被具有相同标识符的另一个静态变量隐藏即可.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读