Class.forName(yourClassname).newInstance();注意,此时需要你的类有无参构造方法

解决方案 »

  1.   

    简单写一个demo让我参考下吧。
      

  2.   

    枚举不能通过new取得的
    public class EnumTest {
    enum test{HelloWord,Hello,Hello2,Hello3,Hello4}
    public static void main(String[] args) {
    System.out.println(test.values()[4]);
    }
    }
      

  3.   


    public class EnumTest {
    enum test{HelloWorld, Hello,Hello2,Hello3,Hello4} 
    public static void main(String[] args)throws Exception {
     test[] tests= test.values();
     for(int i=0;i<tests.length;i++){
     test t=tests[i];
     Class.forName(t.name()).newInstance();
     }
    }
    }
      

  4.   

    HelloWorld, Hello, Hello2, Hello3, Hello4
    这些只是枚举元素,并不是实际的class。
    你这样写语法上没有错,但是跑不通的。
      

  5.   

    package com.test;public class TestReflect {
    public static void main(String[] args){
    Class clazz;
    Object obj;

    for(TestClassName className:TestClassName.values()){
    try{
    clazz=Class.forName("com.test."+className);
    obj=clazz.newInstance();
    System.out.println(obj);

    }catch(Exception e){
    e.printStackTrace();
    }
    }
    }
    }enum TestClassName{
    HelloWorld, 
    Hello,
    Hello2,
    Hello3,
    Hello4
    } class HelloWorld{
    public String toString(){
    return "HelloWorld";
    }
    }class Hello{
    public String toString(){
    return "Hello";
    }
    }class Hello2{
    public String toString(){
    return "Hello2";
    }
    }class Hello3{
    public String toString(){
    return "Hello3";
    }
    }class Hello4{
    public String toString(){
    return "Hello4";
    }
    }
      

  6.   

    To 楼上。
    跑不起来。。
    java.lang.ClassNotFoundException: