工厂方法模式是一种难以理解的方式。
它是工厂的工厂方法。
相当于原本是通过工厂生产产品,现在是通过工厂生产能生产产品的工厂
为了解决一个问题把另外一个问题又恢复了,在我看来有点无用~~~~但是它满足了
工厂接口
public interface InterCount { public int count(int a,int b); }
工厂的工厂接口
public interface InterFactory { public InterCount builderCount(); }
工厂
public class Add implements InterCount{ @Override public int count(int a, int b) { // TODO Auto-generated method stub return a+b; } } public class Sub implements InterCount{ @Override public int count(int a, int b) { // TODO Auto-generated method stub return a-b; } }
工厂的工厂
public class AddFactory implements InterFactory { @Override public InterCount builderCount() { // TODO Auto-generated method stub return new Add(); } } public class SubFactory implements InterFactory { @Override public InterCount builderCount() { // TODO Auto-generated method stub return new Sub(); } }
运行方法
public class A { public static void main(String[] args) { InterFactory interFactory=new AddFactory(); InterCount interCount=interFactory.builderCount(); interCount.count(1, 3); } }
这样我们就可以把工厂类接口化,当我们需要增加新的运算方法的时候只需增加工厂类(new AddFactory();)即可。