阅读量:0
Java静态局部变量(static local variable)是一个特殊的局部变量,它被修饰为static。这意味着这个变量与类的实例无关,而是属于类本身。静态局部变量在类加载时初始化,并在整个程序运行期间保持其值。它们在方法内定义,但在方法外部也可以访问。
静态局部变量的主要特点如下:
- 静态局部变量在类加载时初始化,只需要初始化一次。
- 静态局部变量不依赖于类的实例,因此可以在没有创建类实例的情况下访问。
- 静态局部变量的生命周期与类的生命周期相同,直到类被卸载时才会被销毁。
- 静态局部变量可以通过类名直接访问,也可以通过对象访问。
下面是一个简单的示例:
public class MyClass { public static int staticVar = 10; // 静态局部变量 public void myMethod() { int localVar = 5; // 普通局部变量 System.out.println("静态局部变量: " + staticVar); System.out.println("普通局部变量: " + localVar); } } public class Main { public static void main(String[] args) { MyClass obj1 = new MyClass(); MyClass obj2 = new MyClass(); obj1.myMethod(); obj2.myMethod(); } }
输出结果:
静态局部变量: 10 普通局部变量: 5 静态局部变量: 10 普通局部变量: 5
在这个示例中,staticVar
是一个静态局部变量,它在 MyClass
类加载时初始化。localVar
是一个普通局部变量,它在 myMethod
方法内定义。尽管我们创建了两个 MyClass
的实例,但静态局部变量 staticVar
的值在所有实例之间共享。