![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
小二木成林
这个作者很懒,什么都没留下…
展开
-
观察者模式
定义 实现 需求描述 代码实现 模式总结 优点 适用场景定义观察者模式(Observer)完美的将观察者和被观察的对象分离开。举个例子,用户界面可以作为一个观察者,业务数据是被观察者,用户界面观察业务数据的变化,发现数据变化后,就显示在界面上。面向对象设计的一个原则是:系统中的每个类将重点放在某一个功能上,而不是其他方面。一个对象只做一件事情,并且将他做好。观察者模式在模块之间划定了清晰的界限,提高原创 2017-03-17 16:05:14 · 257 阅读 · 0 评论 -
策略模式
策略模式定义了一系列的算法,并将每一个算法封装起来,而且使它们还可以相互替换。策略模式让算法独立于使用它的客户而独立变化。【定义来源】 读起来很模糊,说白了就是一个算法封装到一个类里面,比如提供几种查找算法,既可以在一个类中写好几个查找算法,也可以在一个方法中用if else 语句,这两种编码方式,我们一般称为硬编码。这种方式,让我们新增一个信息查找算法时,就需要修改源代码了,也需要修改客户端调用原创 2017-03-20 14:00:45 · 255 阅读 · 0 评论 -
命令模式
概述 实现 模式分析 缺点1 概述在软件系统中,“行为请求者”与“行为实现者”通常呈现一种“紧耦合”。但在某些场合,比如要对行为进行“记录、撤销/重做、事务”等处理,这种无法抵御变化的紧耦合是不合适的。在这种情况下,如何将“行为请求者”与“行为实现者”解耦?将一组行为抽象为对象,实现二者之间的松耦合。这就是命令模式(Command Pattern)。[定义来源]2 实现定义命令接口public in原创 2017-03-27 15:14:10 · 285 阅读 · 0 评论 -
单例模式
设计模式-单例模式Java中单例模式定义:“一个类有且仅有一个实例,并且自行实例化向整个系统提供。” —— [ 维基百科 ]设计模式-单例模式方法1 经典实现方式 方法2 多线程实现方式 方法3 多线程实现方式 方法4 双重检查加锁实现方式 单例失效的情况方法:1 经典实现方式public class Singleton { // 利用一个静态变量来记录Singleton的唯一实例。原创 2017-03-15 15:40:58 · 233 阅读 · 0 评论 -
工厂模式
定义 正文 简单工厂 工厂方法模式 抽象工厂模式定义工厂模式是我们最常用的实例化对象模式了,是用工厂方法代替new操作的一种模式。著名的Jive论坛 ,就大量使用了工厂模式,工厂模式在Java程序系统可以说是随处可见。因为工厂模式就相当于创建实例对象的new,我们经常要根据类Class生成实例对象,如A a=new A() 工厂模式也是用来创建实例对象的,所以以后new时就要多个心眼,是否可以考虑使原创 2017-03-22 19:17:56 · 319 阅读 · 0 评论