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