1.单例设计模式
1. 饿汉设计模式
public class SingleDemo {
private SingleDemo() {
}
private volatile static SingleDemo singleDemo;
public static SingleDemo getInstance() {
if (singleDemo == null) { // 判断对象是否为null
synchronized (SingleDemo.class) { // 如果为null就进入该方法 , 只允许一个线程进入该方法
if (singleDemo == null) { // 创建完成之后 , 后面也有会线程进来 , 所以在判断一次
singleDemo = new SingleDemo();
}
}
}
return singleDemo;
}
}
2.懒汉设计模式
public class SingleDemo {
private SingleDemo() {
}
private final static SingleDemo singleDemo = new SingleDemo();
public static SingleDemo getInstance() {
return singleDemo;
}
}
2.原型(Prototype)模式
原型模式,就是用于重复的创建对象,同时又能保证性能