摘要:
状态模式 何时使用:允许对象在内部状态发生改变时改变它的行为,对象看起来好像修改了它的类。 如何解决:创建表示各种状态的对象和一个行为随着状态对象改变而改变的 context 对象,对象的行为依赖于它的状态,并且可以根据它的状态改变而改变它的相关行为(可通过调用内部的状态对象实现相应的具体行为)。( 阅读全文
posted @ 2016-06-27 18:21
_Doing
阅读(270)
评论(0)
推荐(0)
摘要:
备忘录模式 何时使用:很多时候我们总是需要记录一个对象的内部状态,这样做的目的就是为了允许用户取消不确定或者错误的操作,能够恢复到他原先的状态,使得他有"后悔药"可吃。在不破坏封装的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,这样可以在以后将对象恢复到原先保存的状态。 如何解决:通过 阅读全文
posted @ 2016-06-27 18:21
_Doing
阅读(136)
评论(0)
推荐(0)
摘要:
空对象模式 在空对象模式中,我们创建一个指定各种要执行的操作的抽象类和扩展该类的实体类,还创建一个未对该类做任何实现的空对象类,该空对象类将无缝地使用在需要检查空值的地方。使用一个空对象取代 NULL 对象实例的检查,空对象不是检查空值,而是反应一个不做任何动作的关系。这样的空对象也可以在数据不可用 阅读全文
posted @ 2016-06-27 18:20
_Doing
阅读(275)
评论(0)
推荐(0)
摘要:
观察者模式 何时使用:对象间的一种一对多的依赖关系,当一个对象(观察目标对象)的状态发生改变,所有依赖于它的对象(观察者对象)都将得到通知,使这些观察者对象能够自动更新(即使用推送方式)。 如何解决:在观察目标类里有一个 ArrayList 存放观察者们。 优点: 1、观察者和被观察者是抽象耦合的。 阅读全文
posted @ 2016-06-27 18:20
_Doing
阅读(266)
评论(0)
推荐(0)
摘要:
策略模式 何时使用:一个类的行为或其算法可以在运行时更改。在有多种算法相似的情况下,使用 if...else 所带来的复杂和难以维护。 如何解决:创建表示各种策略的对象(它们实现同一个接口,可相互替换)和一个行为随着策略对象改变而改变的 context 对象。策略对象改变 context 对象的执行 阅读全文
posted @ 2016-06-27 18:19
_Doing
阅读(172)
评论(0)
推荐(0)

浙公网安备 33010602011771号