第1题:
第2题:
第3题:
第4题:
第5题:
第6题:
第7题:
以下意图哪个是用来描述SINGLETON(单件)?()
第8题:
Decorator(装饰)模式的意图是:()。
第9题:
以下意图哪个是用来描述FACTORY METHOD(工厂方法)?()
第10题:
第11题:
将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化
定义一系列的算法,把它们一个个封装起来,并且使它们可相互替换
为其他对象提供一种代理以控制对这个对象的访问
保证一个类仅有一个实例,并提供一个访问它的全局访问点
第12题:
将抽象部分与它的实现部分分离,使它们都可以独立地变化
将一个复杂对象的构建与它的表示分离
定义一系列的算法,把它们一个个封装起来,并且使它们可相互替换
第13题:
第14题:
第15题:
第16题:
第17题:
第18题:
第19题:
以下意图哪个是用来描述COMMAND(命令)?()
第20题:
关于模式适用性,在以下情况可以使用builder模式?()
第21题:
当类只能有一个实例而且客户可以从一个众所周知的访问点访问它时
当创建复杂对象的算法应该独立于该对象的组成部分以及它们的装配方式时
当构造过程必须允许被构造的对象有不同的表示时
一个对象的行为取决于它的状态,并且它必须在运行时刻根据状态改变它的行为
第22题:
定义一系列的算法,把它们一个个的封装起来,并且使它们可相互替换
为一个对象动态连接附加的职责
你希望只拥有一个对象,但不用全局对象来控制对象的实例化
在对象之间定义一种一对多的依赖关系,这样当一个对象的状态改变时,所有依赖于它的对象都将得到通知并自动更新
第23题:
当一个对象必须通知其它对象,而它又不能假定其它对象是谁。换言之,你不希望这些对象是紧密耦合的
许多相关的类仅仅是行为有异。“策略”提供了一种用多个行为中的一个行为来配置一个类的方法
需要使用一个算法的不同变体。例如,你可能会定义一些反映不同的空间/时间权衡的算法。当这些变体实现为一个算法的类层次时可以使用策略模式
算法使用客户不应该知道的数据。可使用策略模式以避免暴露复杂的、与算法相关的数据结构