组合设计模式的(49)构件角色,表示叶节点对象没有子节点,实现构件角色声明的接口。

admin2010-01-23  34

问题 组合设计模式的(49)构件角色,表示叶节点对象没有子节点,实现构件角色声明的接口。

选项 A、Leaf
B、Right
C、Composite
D、Component

答案A

解析 组合模式以树形结构将被组合的对象和组合对象抽象为同一种对象,使得用户对单个对象和组合对象的使用具有一致性。组合模式的组成如下。①抽象构件角色Component:它为组合中的对象声明接口,也可以为共有接口实现默认行为。②树叶构件角色Leaf:在组合中表示叶节点对象没有子节点,实现抽象构件角色声明的接口。③树枝构件角色Composite:在组合中表示分支节点对象有子节点,实现抽象构件角色声明的接口,存储子部件。组合模式中必须提供对子对象的管理方法,不然无法完成对子对象的添加、删除等操作,也就失去了灵活性和扩展性。如果在Component里面声明所有的用来管理子类对象的方法,以达到Component接口的最大化。其目的是为了使客户在接口层次上树叶和分支的透明性。但树叶是不存在于类的,因此 Component声明的一些方法对于树叶来说是不适用的。如果只在Composite里声明所有的用来管理子类对象的方法,就可以避免上一种方式的安全性问题,但是由于叶子和分支有不同的接口,因此又失去了透明性。
转载请注明原文地址:https://jikaoti.com/ti/w2a7FFFM
0

相关试题推荐
最新回复(0)