静态变量和全局变量(Java)之间有什么区别?

PJ *_*ang -1 java variables

我对静态变量和全局变量之间的区别感到困惑.当我今天浏览Java教科书时,我的眼睛被"变量声明为静态的变量本质上是全局变量.当声明一个对象时,不会产生静态变量的副本." 我很清楚为什么静态变量被其类中的所有对象共享,但我不明白为什么静态变量是全局变量.根据我的理解,静态变量在其类中只能被视为"全局".

Jer*_*vel 5

可以(并且应该)使用静态变量进行访问Class.Variable.

如果是静态变量,它们将始终全局可用public.

public class MyClass {
 public static int X = 5;
}
Run Code Online (Sandbox Code Playgroud)

可以在课程可用的任何地方访问

MyClass.X

没有实际的'全球'关键字或任何东西,但它接近它的意图.