```java // 单例类,用于实现计数器功能 public class CounterSingleton { // 唯一的实例 private static CounterSingleton instance; // 计数器的值 private int count = 0; // 私有构造函数,防止外部实例化 private CounterSingleton() { // 可以在这里初始化资源 } // 获取唯一实例的方法,采用懒汉模式 public static synchronized CounterSingleton getInstance() { if (instance == null) { instance = new CounterSingleton(); } return instance; } // 增加计数器的值 public void increment() { count++; } // 获取当前计数器的值 public int getCount() { return count; } } ``` ### 需要注意的逻辑点: 1. **线程安全**:在多线程环境下,`getInstance` 方法必须是线程安全的,这里通过 `synchronized` 关键字确保了这一点。如果性能要求较高,可以考虑使用双重检查锁定(Double-Check Locking)来优化。 2. **资源初始化**:在私有构造函数中可以进行必要的资源初始化,例如数据库连接等。 3. **计数器重置**:如果需要重置计数器,可以在 `CounterSingleton` 类中添加一个 `reset` 方法,将 `count` 重置为 0。 [2024-11-21 20:51:13 | AI写代码神器 | 311点数解答]