其他分享
首页 > 其他分享> > 《Head First 设计模式》 第十、十一章 状态模式、代理模式

《Head First 设计模式》 第十、十一章 状态模式、代理模式

作者:互联网

 

 

原则

模式

关联

 

状态模式

 

模式

状态模式

允许对象在内部状态改变时改变它的行为,对象看起来好像修改了它的类

 

 

关联

与策略模式的差别

类图与策略模式一致,这两个模式的差别在于它们的意图。

一般来说,我们把策略模式想成是除了继承之外的一种弹性替代方案。如果你使用继承定义了一个类的行为,你将被这个行为困住,甚至要修改它都很难。有了策略模式,你可以通过组合不同的对象来改变行为。

我们把状态模式想成是不用在 context 中放置许多条件判断的替代方案。通过将行为包装进状态对象中,你可以通过在 context 内简单地改变状态对象来改变 context 的行为。

 

 

代理模式

 

模式

代理模式

为另一个对象提供一个替身或占位符以控制对这个对象的访问。

 

 

关联

Spring 的 AOP 用到了动态代理

Mybatis 用到了动态代理

 

标签:状态,对象,十一章,代理,模式,context,设计模式,行为
来源: https://www.cnblogs.com/stone94/p/13125448.html