📄 cmdfactory.java
字号:
package accp.factory;
import java.util.HashMap;
import java.util.Map;
import accp.command.ICommand;
public class CmdFactory implements IFactory{
private CmdFactory() {}
private static CmdFactory factory = new CmdFactory();
public static CmdFactory getInstance() {
return factory;
}
private static Map<String,ICommand> cmdCache;
private static Map<String,String> xmlMap;
static{
cmdCache = new HashMap<String,ICommand>();
xmlMap = ReadConfig.getInstance().readFromXML();
}
public ICommand createCmd(String type) {
if(cmdCache.containsKey(type))
return cmdCache.get(type);
ICommand cmd = null;
try{
String classname = xmlMap.get(type);
Class cls = Class.forName(classname);
cmd = (ICommand)cls.newInstance();
cmdCache.put(type, cmd);
}catch(Exception e){}
return cmd;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -