YourClass  yc = 
        (YourClass)(Class.forName("packagename.classname").newInstance());

解决方案 »

  1.   

    问题应该就是这样解决,你自己看看下面这段代码
    import java.io.*;public class Loader extends ClassLoader
    {
    private String fileName = null;
    static int maxsize=10000;//类文件的最大字节数
    static String SysMsg="System Message:";
    public Loader()
    {
    super();
    }
    public Class load(String f,String classname) throws java.lang.Exception
    {
    fileName = f;
    Class c = this.findLoadedClass(fileName);
    if (c==null)
    {
    FileInputStream in=new FileInputStream(fileName);
    byte[] classbyte=new byte[maxsize];

    int readsize=in.read(classbyte);
    System.out.println(SysMsg+"UserApp class file ["+classname+".class] Loaded("+readsize+"Byte(s))."); in.close(); return defineClass(classname,classbyte,0,readsize);
    }
    else
    return c;
    }
    }
      

  2.   

    赞成 ajiao(明年今日) ,你可以试试
      

  3.   

    好像动态调用方法要用invoke方法,具体怎么调,请高手指点
      

  4.   

    ClassLoader

    Class.forName()
    有什么关系和区别!?
      

  5.   

    YourClass  yc = 
            (YourClass)(Class.forName("packagename.classname").newInstance());
    Method[] mtd=yc.getMethods();
    mtd[0].invoke(param,param);
      

  6.   

    invoke里的两个参数分别是什么?我的方法如果有多个参数怎么传递?