工厂模式
主要解决接口选择的问题,通过一个共同的接口来指向新创建的对象。
1、定义接口ICar
public interface ICar{
public void Drive();
}
2、定义实现接口的实体类
RedCar.java
public class RedCar implements ICar{
public void Drive(){
System.out.prinln("红色汽车");
}
}
BlueCar.java
public class BlueCar implements ICar{
public void Drive(){
System.out.prinln("蓝色汽车");
}
}
YelloCar.java
public class BlueCar implements ICar{
public void Drive(){
System.out.prinln("黄色汽车");
}
}
3、创建工厂类Factory
public class Factory{
public ICar getfactor(String opt){
if(opt==null) return null;
else if(opt.equals("red")) return new RedCar();
else if(opt.equals("blue")) return new BlueCar();
else if(opt.equals("yellow")) return new YellowCar();
return null;
}
}
4、使用该工厂
public class Test{
public static void main(String args){
Factor factory=new Factory();
ICar icar1=factory.getfactor("red");
icar1.Drive();
ICar icar2=factory.getfactor("blue");
icar2.Drive();
ICar icar3=factory.getfactor("yellow");
icar3.Drive();
}
}
输出结果为:
红色汽车
蓝色汽车
黄色汽车