class类型用newInstance() 来创建实例

解决方案 »

  1.   

    Object o = Class.forName("test.Test").newInstance();
    Test t = (Test)o;
    就返回该类的一个实例(使用0参数的构造函数)。java.lang.reflect.*
    包下面还有Method类,他代表一个方法。可以用于执行一各类中的方法。
    可以用 
    Class.getMethod(String, Class[]);
    Method.invoke(..)
    等几个方法实现函数的调用。
    具体的用法参见javadoc.
      

  2.   

    你可以试试ClassLoader,相关资料:
    http://adionline.myrice.com/Java/java_classloader.htm
      

  3.   

    问题:
    当我在写这个程序的时候,我并不知道他要调用的Class以后会是什么名字。
    Test t = (Test)o;
    这个Test是不可以用的。
    Class.getMethod(String, Class[]);
    Method.invoke(..)
    我现在再用这个。Class[]应该是要调用的那个Class里面的方法的参数吧?
    我该怎么传?
    invoke怎么用,,,,
    好,我试出来了
    还是请你讲一下你的意见。多谢。
      

  4.   

    你这样实现不了。
    当程序A完成后,将永不更改,但是A里面要做的事情可能千变万化,这些变化的东西就写在a1,a2,a3,,,,中,A会通过设置就可以去取a1,a2,,,,来执行。A永远都不知道到底会有多少a1,a2,,,,但是A一定都可以去运行他们。
      

  5.   

    cow, , ,,  被你打败了, ,, ,好好看看啥叫继承. . ... . .
      

  6.   

    http://adionline.myrice.com/Java/java_classloader.htm
    这个我刚看完,挺好的。多谢。怎么给分??