java 中如何全局初始化一次 一个对象
时间: 2024-04-29 11:21:44 浏览: 72
在 Java 中,可以使用静态初始化块或者静态方法来实现全局初始化一次一个对象。
1. 静态初始化块
静态初始化块是在类加载时执行的一段代码块。可以将需要全局初始化一次的对象在静态初始化块中初始化。
示例代码:
```
public class GlobalObject {
private static MyObject object;
static {
object = new MyObject();
// 进行其他的全局初始化操作
}
// 对外提供获取对象的方法
public static MyObject getObject() {
return object;
}
}
```
在上面的代码中,静态初始化块中对 `MyObject` 类型的对象进行了初始化,并且可以在其他地方通过调用 `GlobalObject.getObject()` 方法获取该对象。
2. 静态方法
除了使用静态初始化块,还可以使用静态方法来进行全局初始化操作。
示例代码:
```
public class GlobalObject {
private static MyObject object;
public static void init() {
object = new MyObject();
// 进行其他的全局初始化操作
}
// 对外提供获取对象的方法
public static MyObject getObject() {
return object;
}
}
```
在上面的代码中,通过调用 `GlobalObject.init()` 方法对 `MyObject` 类型的对象进行初始化,并且可以在其他地方通过调用 `GlobalObject.getObject()` 方法获取该对象。需要注意的是,在使用静态方法时需要手动调用一次初始化方法,否则对象不会被初始化。
阅读全文