java实现单例设计模式居民身份证
时间: 2024-06-16 08:08:19 浏览: 109
Java实现单例设计模式有多种方式,其中比较常用的是饿汉式和懒汉式。
1. 饿汉式:
饿汉式是指在类加载时就创建实例对象,保证了线程安全。具体实现如下:
```java
public class Singleton {
private static Singleton instance = new Singleton();
private Singleton() {
// 私有构造方法
}
public static Singleton getInstance() {
return instance;
}
}
```
在上述代码中,私有的构造方法保证了其他类无法直接实例化该类,而静态的getInstance()方法返回了唯一的实例对象。
2. 懒汉式:
懒汉式是指在需要使用实例对象时才进行创建,可以节省资源。但需要注意线程安全问题,可以通过加锁或双重检查锁定来解决。以下是双重检查锁定的实现方式:
```java
public class Singleton {
private volatile static Singleton instance;
private Singleton() {
// 私有构造方法
}
public static Singleton getInstance() {
if (instance == null) {
synchronized (Singleton.class) {
if (instance == null) {
instance = new Singleton();
}
}
}
return instance;
}
}
```
在上述代码中,使用了volatile关键字来保证instance的可见性,双重检查锁定确保了只有在instance为null时才创建实例对象。
阅读全文