设计模式
dawn_rainy
路漫漫其修远兮,吾将上下而求索
展开
-
责任链模式实际应用
职责链模式(Chain of Responsibility):使多个对象都有机会处理同一个请求,从而避免请求的发送者和接收者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。类图:应用场景: 为完成同一个请求,如果存在多个请求处理器以及未知请求处理器个数或者请求处理器可动态配置的情况下,可以考虑使用责任链模式。如OKHttp的拦截器就是使用的责任链模式。 我先描述一下我的使用场景。新接一个需求,拍照上传到服务器。我调用系统自带的拍...原创 2020-07-09 16:18:33 · 1913 阅读 · 1 评论 -
单例模式
在基于偏序关系的Happens-Before内存模型中,指令重排技术大大提高了程序执行效率,但同时也引入了一些问题。一个指令重排的问题——被部分初始化的对象懒加载单例模式和竞态条件一个懒加载的单例模式实现如下:class Singleton { private static Singleton instance; private Singleton(){} ...转载 2019-08-30 10:20:11 · 79 阅读 · 0 评论