Factory Method (工厂模式) (2)

@Override
protected void registerProduct(Product product) {
teleS.put(++i,((Televison)product).getName());
}
public TreeMap getTeles(){
return teleS;
}
}
```

相关设计模式

template method :factory method就是模板设计模式的延伸。

singleton :单例模式,这里我们的产品可以改为单例模式,我们实际运用中使用的到的类比如hibernate中的,都是单例的 如数据库连接等。

Composite: composite模式用于product角色

Iterator: 在Iterator模式中使用iterator方法生成Iterator实例会使用Factory Method。

还有一个问题是,使用Factory Method 设计模式,必须在具体的Product作注释,不然使用者必须了解上层代码,或者维护可能会修改使用者的具体用意。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zypdwg.html