问题
单项选择题 共用题干题
某银行系统采用FactoryMethod方法描述其不同账户之间的关系,设计出的类图如下所示。其中与Factory Method中的“Creator”角色相对应的类是(1);与“Product”角色相对应的类是(2)。
空白(1)处应选择()
A.Bank
B.Account
C.Checking
D.Savings
答案
参考答案:A
解析:
FactoryMethod模式的意图是,定义一个用于创建对象的接口,让子类决定实例化哪一个类。FactoryMethod是一个类的实例化延迟到其子类。FactoryMethod模式的类图如下图所示。其中:·类Product定义了FactoryMethod所创建的对象的接口。·类ConcreteProduct用于实现Product接口。·类Creator声明了工厂方法,该方法返回一个Product类型的对象。Creator也可以定义一个工厂方法的缺省实现,它返回一个缺省的ConcreteProduct对象。·类ConcreteCreator重定义了工厂方法,以返回一个ConcreteProduct实例。对照两张类图可以看出,与“Creator”角色相对应的类是Bank;与“Product”角色相对应的类是Account。