Java中的类变量和静态变量是否相同?

时间:2015-10-29 00:51:16

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

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

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

3 个答案:

答案 0 :(得分:3)

来自评论中的link @Zar,

  

声明中包含static修饰符的字段称为静态字段或类变量。

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

答案 1 :(得分:2)

如果我理解,你要求区别:

int a;

static int a;

如果两者都被定义为类变量(它们不在方法中),主要的实际差异是范围和寿命。

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

静态修饰符的主要描述是它与类分离,因此:

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

您不需要实例化任何对象来获取静态变量。

您无法在静态方法中访问非静态类变量(基本上您无法使用"此")

希望这有帮助。

答案 2 :(得分:0)

静态变量也称为类变量。它通过使用static修饰符声明。 只为类创建一个静态变量副本,因此它被称为类变量。