使用json接数据,又不想使用类名,想简化结构,直接处理后返回。
直接Class<?>也可以,不过警告真心烦人。
public class BsDispatcher{
public static final int BS_XXX = 1;
public static final int BS_YYY = 202;
public static Map<Integer, Class<? extends BsAction>> handler; //限定基类
public static void init(){
handler = new HashMap<Integer, Class<? extends BsAction>>();
handler.put(BS_XXX, BsActionXXX.class);
handler.put(BS_YYY, BsActionYYY.class);
}
public static String run(int cmd, String data){
Class<? extends BsAction> c = handler.get(cmd);
if (c == null)
return ""; //返回错误
BsAction ba = JsonUntils.parseJson(data, c);
return ba.handler();
}
}
网友评论