设计一个单例模式的例子,用饿汉式和懒汉式各实现一次
时间: 2024-05-06 22:19:26 浏览: 11
好的,我可以回答您的问题。
饿汉式单例模式指在程序启动时就创建了一个单例对象,而懒汉式单例模式则是在第一次使用时才创建单例对象。
以下是使用饿汉式实现的单例模式的示例代码:
```java
public class Singleton {
// 在类加载时就创建单例对象
private static Singleton instance = new Singleton();
// 私有构造函数
private Singleton() {
}
// 公共静态方法获取单例对象
public static Singleton getInstance() {
return instance;
}
}
```
以下是使用懒汉式实现的单例模式的示例代码:
```java
public class Singleton {
// 单例实例变量
private static Singleton instance;
// 私有构造函数
private Singleton() {
}
// 公共静态方法获取单例对象(懒加载)
public static Singleton getInstance() {
if (instance == null) {
instance = new Singleton();
}
return instance;
}
}
```
注意:使用懒汉式实现单例模式可能会存在线程安全问题,可以使用双重校验锁方式解决,也可以在加载类时就创建实例对象。