软件工程 选择题 标准

装饰模式动态扩展功能 — 软件工程选择题

软件设计模式 结构型模式之二:装饰与组合 AI 三重审校通过

题目
某报告生成系统需在运行时按用户选择,为同一份报告依次叠加“加水印”“加密”功能;未选择的功能不启用,新增功能时不修改报告生成类。哪种设计最符合装饰模式动态扩展功能的特点? A. 让报告生成类继承水印类和加密类,并在编译时确定功能 B. 让水印与加密装饰对象实现报告生成接口,并各自持有被包装的报告对象,可按需嵌套 C. 在报告生成类中直接加入水印和加密代码,并用固定配置决定是否执行 D. 将报告生成对象转换为水印对象或加密对象,每次只能保留一种功能