设计模式
单例模式
一个应用程序中,某个类的实例对象只有一个,你没有办法去new,因为构造器是被private修饰的,一般通过getInstance()的方法来获取它们的实例。
getInstance()的返回值是一个对象的引用,并不是一个新的实例。
双重校验锁
1public class Singleton{
2 private volatile static Singleton singleton;
3 private Singleton(){}
4 public static Singleton getSingleton(){
5 if(singleton == null){
6 synchronized(Singleton.class){
7 if(singleton==null){
8 singleton = new singleton;
9 }
10 }
11 }
12 }
13}
观察者模式
对象间一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。
https://mp.weixin.qq.com/s/sdj9DcnZZNRiWssgygiTTw
装饰者模式
对已有的业务逻辑进一步的封装,使其增加额外的功能,如Java中的IO流就使用了装饰者模式,用户在使用的时候,可以任意组装,达到自己想要的效果。
适配器模式
工厂模式
##代理模式