软件设计模式之工厂模式(Java实现)
UML设计图
核心实现代码
(1)抽象工厂接口
public interface AbstractFactory {
public Policy getObj();
}
(1)抽象产品接口(Policy)
public interface Policy {
abstract String getInsurInfo();
}
(2)具体产品对应的工厂类
public class Factory_Car implements AbstractFactory{
public Policy getObj(){//实现抽象工厂AbstractFactory接口的getObj()方法
return new Policy_Car();
}
}
(2)产品类
public class Policy_Car implements Policy{//实现产品抽象类的方法
private String description="汽车损坏险";
public String getInsurInfo(){
return description;
}
}
(4)client类
AbstractFactory pp=null;
String option="";
if(type.equals("驾驶员身体受伤")){pp=new Factory_Driver();}
else if(type.equals("汽车损坏")){pp=new Factory_Car();}
else if(type.equals("人员伤亡")){pp=new Factory_Passenger();}
else if(type.equals("多种事故")){pp=new Factory_Multi();}
Policy ai=pp.getObj();//制定相应产品的工厂
String str=ai.getInsurInfo();