- 博客(7)
- 资源 (2)
- 收藏
- 关注
原创 状态模式(State)—考勤系统
定义:状态模式是对象的行为模式,允许一个对象在其内部状态改变时改变他的行为,这个对象看上去就像改变了他的类一样。角色:环境(Context)角色:
2016-01-27 11:35:52 2180
原创 备忘录模式(Memento)—通风系统
定义:备忘录模式又叫做快照模式,或Token模式,是对象的行为模式。备忘录对象是一个用来存储另外一个对象内部状态的快照的对象,其用意是在不破坏封装的前提下,将一个对象的状态捕捉住,并外部化,存储起来,从而可以在将来合适的时候,将这个对象还原到存储起来的状态。角色:备忘录(Memento)角色:将发起人对象的内部状态存储起来。发起人(Originator)角色:创建一个含有当前的
2016-01-25 17:10:25 691
原创 命令模式(Command)—挤奶工挤奶
定义:命令模式属于对象的行为模式,又叫行动模式、交易模式。命令模式把一个请求或者操作封装到一个对象中,命令模式允许系统使用不同的请求把客户端参数化,对请求排队或者记录请求日志,可以提供命令的撤销和恢复功能。角色:客户端(Client)角色:创建一个具体命令对象(ConcreteCommand),并确定接收者。命令(Command)角色:声明一个给所有具体命令对象的接口。具体
2016-01-22 18:23:10 654
原创 责任链模式(chain)—员工请假
定义:责任链模式是对象的行为模式,在责任链模式里,很多对象由每一个对象对其下家的引用而链接起来形成一条链,请求在这个链上传递,直到链上的某一个对象决定处理此请求。发出这个请求的客户端并不知道哪一个对象处理此请求,这使得系统在不影响客户端的情况下动态的重新组织和分配责任。角色列表:抽象处理者角色(Handler):定义出一个处理请求的接口或者抽象类,如果需要,接口可以定义出一个方法以设定
2016-01-21 13:53:57 1529
原创 迭代器模式(Iterator)—牛群体检
定义:提供一种方法顺序访问一个聚合对象中的各个元素,而又不需暴露该对象的内部表示。角色列表:迭代器角色(Iterator):迭代器角色负责定义访问和遍历元素的接口。具体迭代器角色(ConcreteIterator):具体迭代器角色实现迭代器接口,并记录当前的遍历位置。容器角色(Container):容器角色负责提供创建具体迭代器角色的接口。具体容器角色(ConcreteCo
2016-01-20 18:37:13 549
原创 观察者模式(Observer)—水泥厂发通知
观察者模式观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态上发生变化时,会通知所有观察者对象,使它们能够自动更新自己。类图角色抽象主题(Subject)角色:抽象主题角色把所有对观察者对象的引用保存在一个聚集(比如ArrayList对象)里,每个主题都可以有任何数量的观察者。抽象主题提供一个接口,可以增加和删除观察
2016-01-08 13:59:50 1168
原创 模板模式(Template)-水泥厂订货
模板方法:定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。 T模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。角色:抽象类(AbstractClass): 定义抽象的原语操作(primitive operation) ,具体的子类将重定义它们以实现一个算法, 实现一个模板方法,定义一个算法的骨架。该模板方法不仅调用原语操作,也调用定义具体子类 (Con
2016-01-07 15:13:58 847
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人