工厂模式的步骤
创建一个图形接口:
public interface Sharp {
public String getDraw();
}
创建实现图形接口的实体类。
public class Square implements Sharp {
@Override
public String getDraw() {
return "正方形";
}
}
public class Trigle implements Sharp {
@Override
public String getDraw() {
return "三角形";
}
}
创建一个工厂,生成基于给定信息的各种图形实体类的对象。
public class FactorySharp {
public Sharp getSharp(String sharp){
if(sharp==null){
return null;
}
if("SQUARE".equalsIgnoreCase(sharp)){
return new Square();
}else if("TRiGLE".equalsIgnoreCase(sharp)){
return new Trigle();
}
return null;
}
}
使用该工厂,通过传递类型信息来获取实体类的对象。
public class Test {
public static void main(String[] args) {
FactorySharp factorySharp = new FactorySharp();
Sharp trigle = factorySharp.getSharp("trigle");
Sharp square = factorySharp.getSharp("square");
System.out.println(square.getDraw());
System.out.println(trigle.getDraw());
}
}