2012年5月15日

设计模式之(十七)状态模式State

摘要: 由简单的开始会比较好理解状态模式的作用,先来看一个列子如果你有一个只能顺时针转动的瓦斯开关,转动一次的状态为OFF Small fire 与 large fire ,你如何在程序中控制状态于行为变化呢?一个最简单的方式就是用if else 或是sweitch如enum DocumentState{ Readonly, Editable}public class Document{ DocumentState State; public void Handle() { if(state.Readonly == state) { } if(... 阅读全文

posted @ 2012-05-15 14:47 361741352 阅读(170) 评论(0) 推荐(0) 编辑

Visitor 访问者模式

摘要: 意图 表示一个作用于某对象结构的各个元素的操作,他可以在不改变各元素的前提下定义作用于这些元素的新的操作。public abstract class Shape{ public abstract void Draw();}public class Rectangle :Shape{ public override void Draw() { // }}public calss Circle:Shape{ public override void Draw() { // }}假设现在Shape 需要新增加一个特性MoveTo操作,它所有的子类都需要添加一个Moveto的... 阅读全文

posted @ 2012-05-15 00:36 361741352 阅读(217) 评论(0) 推荐(0) 编辑

导航