什么是单例模式?单例模式如何实现只能创建一个对象实例
时间: 2023-05-28 13:07:44 浏览: 173
单例模式,属于创建类型的一种常用的软件设计模式 通过单例模式的方法创建的类在当前进程中只有一个实例(根据需要,也有可能一个线程中
单例模式是一种创建型设计模式,旨在确保类只能创建一个对象实例,并提供全局访问该对象的方式。
实现单例模式有多种方式,其中比较常见的是饿汉式和懒汉式。
饿汉式是指在类加载时就创建单例对象,代码如下:
```
public class Singleton {
private static Singleton instance = new Singleton();
private Singleton() {}
public static Singleton getInstance() {
return instance;
}
}
```
懒汉式是指在第一次访问时才创建单例对象,代码如下:
```
public class Singleton {
private static Singleton instance = null;
private Singleton() {}
public static synchronized Singleton getInstance() {
if (instance == null) {
instance = new Singleton();
}
return instance;
}
}
```
需要注意的是,懒汉式需要考虑线程安全问题,因此通常使用synchronized关键字来保证线程安全。另外,还有一种双重检查锁定的方式可以提高效率,但也需要注意线程安全问题。
阅读全文