小编rub*_*bby的帖子

使用Java Reflection,java.lang.ClassNotFoundException动态创建类

我想在java中使用反射,我想做第三个类将从控制台读取类的名称作为String.在读取类的名称后,它将自动动态地(!)生成该类并调用其writeout方法.如果未从输入中读取该类,则不会对其进行初始化.

我写了那些代码,但我总是把它拿到" java.lang.ClassNotFoundException",我不知道如何修复它.谁能帮我?

class class3 {  
   public Object dynamicsinif(String className, String fieldName, String value) throws Exception
   {    
      Class cls = Class.forName(className,true,null);    
      Object obj = cls.newInstance();    
      Field fld = cls.getField(fieldName);    
      fld.set(obj, value);    
      return obj;    
  }

  public void writeout3()    
  {    
      System.out.println("class3");    
  }    
}

public class Main {        
    public static void main(String[] args) throws Exception    
    {            
           System.out.println("enter the class name : ");    
       BufferedReader reader= new BufferedReader(new InputStreamReader(System.in));
           String line=reader.readLine();    
           String x="Text1";    
           try{    
              class3 trycls=new class3();    
              Object gelen=trycls.dynamicsinif(line, x, "rubby");    
              Class …
Run Code Online (Sandbox Code Playgroud)

java reflection classnotfound

3
推荐指数
1
解决办法
2万
查看次数

标签 统计

classnotfound ×1

java ×1

reflection ×1