采用以下设计思路实现下图所示的目录浏览器:目录中的每个目录项被认定为一个类,其属

题库2022-08-02  37

问题 采用以下设计思路实现下图所示的目录浏览器:目录中的每个目录项被认定为一个类,其属性包括名称、类型(目录或文件)、大小、扩展名、国标等。为节省内存空间,要求不能将具有相同属性(例如类型、扩展名、图标相同)的相同文件看作不同的对象。能够满足这一要求的设计模式是( )。A.FlyweightB.ProxyC.CommandD.State

选项 A.Flyweight
B.Proxy
C.Command
D.State

答案 A

解析 根据目的和用途不同,设计模式可分为创建型(Creadonal)模弍、结构型(Structural)模式和行为型(Behavioral)模式三种。创建型模式主要用于创建对象,结构型模式主要用于处理类或对象的组合,行为型模式主要用于描述类或对象的交互以及职责的分配。根据题干的描述,适用于该要求的设计模式应属于结构型模式。Flyweight(享元)和Proxy(代理)属于结构型模式。Flyweight模式通过运用共享技术,有效地支持大量细粒度的对象。系统只使用少量的对象,而这些对象都很相似,状态变化很小,对象使用次数增多。Proxy模式可为某个对象提供一个代理,并由代理对象控制对原对象的引用。代理模式能够协调调用者和被调用者,能够在一定程度上降低系统的耦合度。因此本题适合于采用Flyweight模式。
转载请注明原文地址:https://tihaiku.com/congyezige/2407252.html

最新回复(0)