【答案解析】virtual void Insert(Department*department)
virtual Department GetDepartment (int id)
public IDepartment
public IDepartment
class Ifactory
virtual IDepartment*CreateDepartment()
[解析] 本题考查抽象工厂设计模式的概念及其应用。
抽象工厂设计模式的意图是:提供一个创建一系列相关或相互依赖的对象,而无须指出它们具体的类。在如下情况下应当考虑使用抽象工厂模式:
●当一个系统要独立于它的产品的创建、组合和表示时。
●当一个系统要由多个产品系列中的一个来配置时。
●当需强调一系列相关的产品对象的设计以便进行联合使用时。
●想提供一组对象而不显示它们的实现过程,只显示它们的接口时。
抽象工厂设计模式的类图如下图所示,其中:
●AbstractFactory为抽象工厂,声明抽象产品的方法。
●ConcreteFactory为具体工厂,执行生戍抽象产品的方法,生成一个具体的产品。
●AbstractProduct为抽象产品,为一种产品声明接口。
●Product为具体产品,定义具体工厂生成的具体产品的对象,实现产品接口。