java里的static什么意思
时间: 2024-09-21 15:05:40 浏览: 48
Java使用static
在Java中,`static`有几种含义:
1. **静态成员**[^1]:如静态变量(如`static int staticVar;`)或静态方法。它们不属于类的任何一个实例,而是共享给所有该类的对象。这意味着无论创建多少个类的实例,静态变量和方法都有独立的副本。
2. **静态块**:这是一个特殊的初始化块,与类同名并位于类定义内部。静态块仅在类初次加载时执行一次,主要用于一次性设置静态变量的初始值,或进行一些全局性的初始化操作。
3. **静态内部类**:这些类也称为封闭类,与外部类共享相同的生命周期,但并不依赖于外部类的实例。它们可以访问外部类的静态成员,但不能直接访问非静态成员。
例如,在类MyClass中,静态变量和静态块的示例:
```java
public class MyClass {
// 类级静态变量
static int staticVar;
// 静态块
static {
staticVar = 10;
System.out.println("Static block executed");
}
// 静态方法
public static void main(String[] args) {
System.out.println("Static variable value: " + staticVar);
}
}
```
当你运行这个程序,"Static block executed"会在类加载时打印一次,而`staticVar`的值会一直保持在10,不论main方法调用多少次。
阅读全文