将对象的使用与对象的创建分开。对象的使用者不负责创建对象,只需知道如何获取需
要的对象。这样,当被使用对象的创建过程需要变更或扩展时,对象的使用者无须变动,只要对专门负责创建该对象的对象工厂做必要的变更或扩展即可。
当 BasicPRodUCt 有新的子产品 EXProduct3 要应用到系统时, Factory 的 createProduct()
需要简单修改,增加一个“ else if ”分支,没有完全实现“对扩展开放,对修改封闭”。但当明确产品就是有限的几种时,仍是有效且常用的。
新闻热点
疑难解答