设计模式
pipiang
这个作者很懒,什么都没留下…
展开
-
装饰模式(Decorator)
个人对装饰模式的简单理解:使用对象组合的方式为一个类添加功能举个例子:我想使用把一段文字输入到文件中。FileOutputStream fs = new FileOutputStream("src/Decoratorr/test.txt"); fs.write("aAbBcCbDeEfF".getBytes()); 输出: 但我觉得直接输入到文件中文字太密不方便阅读。这时我们想到可以实现...原创 2018-03-11 12:24:12 · 181 阅读 · 0 评论 -
观察者模式(Observer)
定义:定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时所有依赖于他的对象自动收到通知并跟新。举个例子:张三,李四,王五,收看CCTV(定义对象间的一种一对多的依赖关系) , CCTV放新闻张三,李四,王五收看新闻,CCTV放广告张三,李四,王五换台(一个对象的状态发生改变【CCTV】时所有依赖于他的对象自动收到通知并跟新)观察者模式的实现有固定套路首先我们先熟记模板代码。命名建议 ...原创 2018-03-10 20:06:32 · 221 阅读 · 0 评论 -
适配器模式(Adapter)
定义:将一个类的接口转换为客户希望的另外一个接口。举个例子先熟悉一下适配器模板代码客户希望的接口//在客户端被使用的接口public interface Target { public void request();}现在存在的类//已经存在的接口public class Adaptee { //示意方法 public void specificRequest() { }}...原创 2018-03-10 22:09:19 · 181 阅读 · 0 评论 -
策略模式
在策略模式(Strategy Pattern)中,一个类的行为或其算法可以在运行时更改。这种类型的设计模式属于行为型模式。在策略模式中,我们创建表示各种策略的对象和一个行为随着策略对象改变而改变的 context 对象。策略对象改变 context 对象的执行算法。意图:定义一系列的算法,把它们一个个封装起来, 并且使它们可相互替换。主要解决:在有多种算法相似的情况下,使用 if...else 所...原创 2018-03-01 20:09:39 · 166 阅读 · 0 评论 -
访问者模式(Visitor)
定义:表示一个作用于某对象结构中的各元素操作,他使你可以在不改变各元素的类的前提下定义作用于这些元素的操作。(这个模式我理解的可能还不是很到位)举个例子:有一家饭店如果老板来了就给他看账单,如果消防来了他会检查店里的安全状态,如果顾客来了会想看下菜单在不改变饭店类的前提下实现根据访问者的不同查看的内容也相应不同这就用到访问者模式 一 实现一个可以被访问的目标类他提供一个方法接受访问者,在这...原创 2018-03-11 20:59:44 · 151 阅读 · 0 评论