在类的静态初始化块里可以初始化类的静态数据成员和实例数据成员吗?
时间: 2024-04-29 15:25:34 浏览: 86
在类的静态初始化块里只能初始化类的静态数据成员,而不能初始化实例数据成员。实例数据成员只能在实例化对象时进行初始化。静态数据成员的初始化可以在静态初始化块中进行,也可以在声明时进行。例如:
```java
public class MyClass {
// 静态数据成员的初始化
public static int staticVar = 10;
// 静态初始化块
static {
staticVar = 20;
}
// 实例数据成员
public int instanceVar;
public MyClass(int instanceVar) {
// 实例数据成员的初始化
this.instanceVar = instanceVar;
}
}
```
阅读全文