
设计模式
AHU_
这个作者很懒,什么都没留下…
展开
-
迭代器模式
迭代器设计模式原创 2017-10-27 00:39:28 · 184 阅读 · 0 评论 -
建造者模式
1.建造者模式Builder:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。2.类图:3.代码:组装PC: 1.Diretor和Client需求沟通 ; 2.各个部件Builder 3.ConcreteBuilder去构建组件; 4.成品Productpublic abstract class Builder { //1.CPU public abstra...原创 2018-05-11 16:22:14 · 248 阅读 · 0 评论 -
模板方法
1.模板方法:定义一个操作中的算法骨架,而将一些步骤延迟到子类中。 模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤 处理某个流程的的代码已经具备,但是其中某个结点的代码暂时不能确定。 因此采用工厂方法模式,将这部分代码实现转移给子类完成,即处理步骤在父类中定义好,具体的实现延迟到子类中。 2.类图: 3.代码: 实例:购物---> 1.下单...原创 2018-05-10 11:05:21 · 247 阅读 · 0 评论 -
装饰器模式
1.装饰器模式:Decorator Pattern,允许向一个现有的对象添加新的功能,同时又不改变其结构。装饰着可以在所委托被装饰者的行为之前或者之后加上自己的行为。2.类图:3.代码:public interface Drink { public float cost(); public String getDescription();}public class Coffee imple...原创 2018-05-10 16:10:27 · 192 阅读 · 0 评论 -
观察者模式
1.观察者模式:在对象之间定义了一对多的依赖,当一个对象改变状态,依赖它的对象会收到通知并自动更新。即发布订阅模式:发布者发布信息,订阅者获取信息,订阅了就能收到信息,没订阅就收不到信息。2.类图:3.代码:场景:有一个微信公众号服务,不定时发布一些消息,关注公众号就可以收到推送消息,取消关注就收不到推送消息。//被观察者接口//声明了添加、删除、通知观察者方法public interface...原创 2018-05-10 15:04:17 · 209 阅读 · 0 评论 -
单例模式
1.单例模式确保某各类只有一个实例,必须自己创建自己的唯一实例。一般通过将构造方法声明为private避免类在外部被实例化,在同一虚拟机范围内,Singleton的唯一实例只能通过getInstance()访问。2.实现方式:方案一:懒汉式单例类,在第一次调用的时候实例化自己public class Singleton { private Singleton() {} private stat...原创 2018-05-10 10:19:14 · 131 阅读 · 0 评论 -
适配器设计模式
AdapterPattern:将一个类的接口转换成客户希望的另外一个接口;Adapter模式使得原本由于接口不兼容而不能一起工作的类可以一起工作。原创 2018-04-19 07:22:46 · 222 阅读 · 0 评论 -
工厂方法模式-设计模式
工厂方法模式原创 2017-10-30 00:13:26 · 181 阅读 · 0 评论 -
命令设计模式-设计模式
3原创 2017-11-02 00:24:11 · 188 阅读 · 0 评论 -
策略模式
1.策略模式Strategy:属于对象的行为模式。其用意是针对一组算法,将每一个算法封装到具有共同接口的独立的类中,从而使得它们可以相互替换。策略模式使得算法可以在不影响到客户端的情况下发生变化。2.类图:3.代码:public class Context { //持有一个具体策略对象 private Strategy strategy; //传入一个具体的策略对象 public Cont...原创 2018-05-11 16:50:39 · 241 阅读 · 0 评论