【问题标题】:Are class variables and static variables same in Java?Java中的类变量和静态变量是否相同?
【发布时间】:2016-01-29 00:01:30
【问题描述】:

我知道类变量是静态的,并且在该类的所有对象之间共享。如果是这种情况,我不确定静态变量是什么。

此外,维基百科声明类变量不要与静态变量混淆。

【问题讨论】:

标签: java variables static static-variables class-variables


【解决方案1】:

来自link@Zar在cmets中给出,

在声明中带有static 修饰符的字段称为静态字段或类变量。

所以你的问题的答案是,是的,在 Java 中它们是相同的。

【讨论】:

    【解决方案2】:

    如果我明白,你问的是:

    int a;
    

    static int a;
    

    如果两者都定义为类变量(它们不在方法内),则主要的实际区别是作用域和生命周期。

    静态变量永远不会从内存中删除,并且(如果设置为公共)将可以从项目中的任何位置访问。

    static修饰符的主要描述是它与类分离,所以:

    您无需实例化任何对象即可使用静态方法。

    您无需实例化任何对象即可获得静态变量。

    你不能在静态方法中访问非静态类变量(基本上你不能使用“this”)

    希望这会有所帮助。

    【讨论】:

      【解决方案3】:

      静态变量也称为类变量。它是使用静态修饰符声明的。 一个类只创建一个静态变量的副本,所以它被称为类变量。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-02-05
        • 1970-01-01
        • 1970-01-01
        • 2013-10-16
        • 1970-01-01
        • 2012-09-14
        相关资源
        最近更新 更多