java中设计模式是很常见的,共有25中,这里先举例写出单例中最常用的双重判断加锁的一种单例模式,在面试中这种也是写的最多的一种。
1.这里单例设计模式:
public class SingleTon{
//1.申明静态成员变量,当前类对象的引用
private volatile static SingleTon uniqueInstance;
//2.私有构造方法
private SingleTon(){}
//3.提供公共的静态的方法给外界访问,返回当前类的对象
public static SingleTon getInstance(){
//4..第一重次判断
if(uniqueInstance==null){
//5.加锁防止多线程并发的问题
synchronized(SingleTon.class){
//6.第二重判断
if(uniqueInstance == null){
//7.创建对象,该对象是全局只有一个实例的单例对象
uniqueInstance = new SingleTon();
}
}
}
return uniqueInstance;
}
}
这种单例模式是最高效和简洁的模式。
2.使用单例模式的场景包括:
1.