2007年8月13日
摘要: 我的理解:命令池(采用堆或栈皆可)维护着一组命令集合。只要这些命令实现同个命令接口或者命令抽象类,就能够被命令池依次执行。 class App{ static void Main() { //命令模式:将无论哪个实例的方法抽象成对应的命令放入命令池。命令池会自动执行。 Printer printer = new Printer(); Scann... 阅读全文
posted @ 2007-08-13 18:41 宝气狗 阅读(296) 评论(0) 推荐(0)
摘要: 我的理解:状态模式类似于策略模式([设计模式] 23.Strategy 策略模式),将状态的变化抽象出来(状态的抽象类)。不同的状态继承这个状态抽象类。并实现该状态下方法的变动。与策略模式不同的是,抽象类中一般还维护着各状态的变动。下面举例: public class Elevator{ ElevatorState _elevatorState; public Elevator() { _ele... 阅读全文
posted @ 2007-08-13 18:25 宝气狗 阅读(300) 评论(0) 推荐(0)
摘要: 我的理解:策略模式就是将类中可能在今后存在变化的方法抽象出来(形成一个抽象的策略类或者接口),今后不管方法如何变化,或者有多少种方法,都实现这个策略类或者接口就可以了类要调用哪种方法,只需在运行时申明一下采用哪种方法就可以了。 PS:其实.net中的集合类的排序运算就是用的这种模式。List.Sort (IComparer)在Sort时,传入实现了IComparer接口的排序类就可以了。 clas... 阅读全文
posted @ 2007-08-13 18:22 宝气狗 阅读(201) 评论(0) 推荐(0)