工厂模式,用车做比方,不同型号的车,需要不同的车来生产,而我们不需要去管,我们只需要知道,他在车场里生产出来的就可以了。至于具体的车场,那就车场具体去分配了,这里只写了抽象工厂的代码
//创建车场接口,所有的车场都有需要实现这个接口
public interface IproduceFactory {
public void createProduct(String number);
}
package test.factory;
public class ProcuctFactory1 implements IproduceFactory {
@Override
public void createProduct(String number) {
System.out.println("车间1的工作实现");
}
}
//这样的代码在来两个
package test.factory;
public class ProcuctFactory implements IproduceFactory {
IproduceFactory i =null;
@Override
public void createProduct(String number) {
switch (number) {
case "1":
i= new ProcuctFactory1();
break;
case "2":i= new ProcuctFactory2();
case "3":i= new ProcuctFactory3();
default:
break;
}
}
}
//这个是主角
//测试
package test.factory;
public class test {
public static void main(String[] args) {
ProcuctFactory p =new ProcuctFactory();
p.createProduct("3");
p.i.createProduct("");
}
}
---------------------------------------------------------------------------------------分割线,输出结果-----------------------------------------------------------------------------------------------------------------
车间3的工作实现
按我的理解,就是抽象工厂,通过接口(java的多态性)来实现不同的车间的分配问题,可以再类内部定义一个接口,分条件实例化,也可返回接口,不同条件返回不同结果