Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 我还写了:或者您可以保存类而不是新的MyObject2(),并创建新实例。 if(string.equals(CASE1)){ return new CaseOneObject(); } else if (string.equals(CASE2)){ _Java_Oop - Fatal编程技术网

Java 我还写了:或者您可以保存类而不是新的MyObject2(),并创建新实例。 if(string.equals(CASE1)){ return new CaseOneObject(); } else if (string.equals(CASE2)){

Java 我还写了:或者您可以保存类而不是新的MyObject2(),并创建新实例。 if(string.equals(CASE1)){ return new CaseOneObject(); } else if (string.equals(CASE2)){ ,java,oop,Java,Oop,我还写了:或者您可以保存类而不是新的MyObject2(),并创建新实例。 if(string.equals(CASE1)){ return new CaseOneObject(); } else if (string.equals(CASE2)){ return new CaseTwoObject(); } else if ... map.put ("case1", "class1") .... Class.forName(map.get("case1")).newInstance


我还写了:
或者您可以保存类而不是新的MyObject2(),并创建新实例
if(string.equals(CASE1)){
  return new CaseOneObject();
} else if (string.equals(CASE2)){
  return new CaseTwoObject();
} else if
...
map.put ("case1", "class1")
....

Class.forName(map.get("case1")).newInstance();
Map<String, Class<?>> classes = new HashMap<String, Class<?>>;
Class<?> aClass = com.github.my.overlong.package.SomeClass.class;
classes.put("silly_string_a", aClass);
/* .... */
Map<String,Object> map = new HashMap<String,Object>();
map.put("SomeString",new MyObject());
map.put("SomeString2",new MyObject2());
return map.get(myString);
static Map<String, Class<?>> classMap = new HashMap<String, Class<?>>();
static {
    classMap.put("case1", CaseOneObject.class);
    classMap.put("case2", CaseTwoObject.class);
}
Class<?> clazz = classMap.get(string);
if (clazz != null) {
    return clazz.newInstance();
}
String s = ...
switch(s) {
 case "foo":
   processFoo(s);
   break;
}
String s = ...
switch(s) {
case "quux":
   processQuux(s);
   // fall-through

 case "foo":
 case "bar":
   processFooOrBar(s);
   break;

 case "baz":
    processBaz(s);
   // fall-through

 default:
   processDefault(s);
   break;
}