单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。
这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象。
注意:
1、单例类只能有一个实例。
2、单例类必须自己创建自己的唯一实例。
3、单例类必须给所有其他对象提供这一实例。
这种方式采用双锁机制,安全且在多线程情况下能保持高性能。
public class Singleton {
private volatile static Singleton singleton;
private Singleton (){}
public static Singleton getSingleton() {
if (singleton == null) { //为了防止第一个线程创建,第二个线程过来不用继续创建,可以提高效率
synchronized (Singleton.class) {
if (singleton == null) { //判断如果没有创建的情况下,创建,已经创建无需创建
singleton = new Singleton();
}
}
}
return singleton;
}
}
以下内容来自菜鸟教程,但是不知道如何引用,刚开始写,如果有侵权,请与我联系.