public enum AgentType {
HTTP("http") {
public Agent newInstance() {
return new HttpAgent();
}
},
WEBSERVICE("webSerivce") {
public Agent newInstance() {
return new WSAgent();
}
};
public abstract Agent newInstance();
private String op;
private AgentType(String op) {
this.op = op;
}
public String getOp() {
return op;
}
public static Agent getAgent(String op) {
for (AgentType type : AgentType.values()) {
if (type.getOp() == op) {
return type.newInstance();
}
}
return null;
}
}
用枚举实现工厂模式
最新推荐文章于 2024-07-27 18:05:15 发布