Java 如何使工厂类可扩展?
我正在设计一个使用factory设计模式的简单应用程序。我下面->答案取决于工厂正在做什么,但在提供的示例中,您可以这样做:Java 如何使工厂类可扩展?,java,design-patterns,factory-pattern,Java,Design Patterns,Factory Pattern,我正在设计一个使用factory设计模式的简单应用程序。我下面->答案取决于工厂正在做什么,但在提供的示例中,您可以这样做: package tips.pattern.factory; public class ButtonFactory { private final Map<String, Button> osToButton; public ButtonFactory(Map<String, Button> osToButton) {
package tips.pattern.factory;
public class ButtonFactory {
private final Map<String, Button> osToButton;
public ButtonFactory(Map<String, Button> osToButton) {
this.osToButton = osToButton;
}
public Button createButton(String os){
return this.osToButton.get(os);
}
}
package tips.pattern.factory;
公共类按钮工厂{
私人最终地图按钮;
公共按钮工厂(地图按钮){
this.osToButton=osToButton;
}
公共按钮createButton(字符串操作系统){
返回此.osToButton.get(操作系统);
}
}
您正在制作抽象工厂吗?或者只是一个混凝土工厂?有人说具体不是真正的设计模式,为了设计模式的灵活性,它需要抽象。这可能是你的问题。你看过一本关于设计模式的书,包括抽象工厂模式吗?如果没有,我建议你这样做。更多信息,请看维基百科网站上的这篇文章