单项选择题
以下意图()可用来描述中介者(Mediator)。
A.提供一种方法顺序访问一个聚合对象中各个元素,而又不需暴露该对象的内部表示
B.将抽象部分与它的实现部分分离,使它们都可以独立变化
C.定义一个用于创建对象的接口,让子类决定实例化哪一个类
D.用一个中介对象来封装一系列的对象交互
点击查看答案&解析
相关考题
-
单项选择题
关于模式适用性,()不适合使用职责链(Chain of Responsibility)模式。
A.有多个的对象可以处理一个请求,哪个对象处理该请求运行时刻自动确定
B.在需要用比较通用和复杂的对象指针代替简单的指针的时候
C.用户想在不明确指定接收者的情况下,向多个对象中的一个提交一个请求
D.可处理一个请求的对象集合应被动态指定 -
单项选择题
关于模式适用性,以下()不适合使用模板方法(Template Method)模式。
A.一次性实现一个算法的不变的部分,并将可变的行为留给子类来实现
B.当对一个对象的改变需要同时改变其他对象,而不知道具体有多少对象有待改变
C.各子类中公共的行为应被提取出来并集中到一个公共父类中以避免代码重复。首先识别现有代码中的不同之处,并且将不同之处分离为新的操作。最后,用一个调用这些新的操作的模板方法来替换这些不同的代码
D.控制子类扩展。模板方法只在特定点调用“hook”操作,这样就只允许在这些点进行扩展 -
单项选择题
以下意图()可用来描述命令(Command)模式。
A.将一个请求封装为一个对象,从而使用户可用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤销的操作
B.定义一系列的算法,把它们一个个封装起来,并且使它们可相互替换,本模式使得算法可独立于使用它的客户而变化
C.为其他对象提供一种代理以控制对这个对象的访问
D.保证一个类仅有一个实例,并提供一个访问它的全局访问点
