我正在学习java反射。我正在使用以下代码。但是当我运行时,它给出了错误
unreported exception ClassNotFoundException; must be caught or declared to be thrown Class className=Class.forName("First");
也许我在某个地方出错了。请帮帮我。代码如下:
import java.lang.reflect.Method;
public class First{
public void print(){}
public void ready(){}
}
public class test{
public static void main(String args[])
{
Class className=Class.forName("com.Test.First");
Method[] methods=className.getMethods();
System.out.println("First method is" + methods[0]);
}
}
最佳答案
它的意思是 Class.forName 抛出这个(非运行时)异常,所以你必须以某种方式处理它。这里有两种方法可以做到这一点
public class test{
public static void main(String args[]) throws ClassNotFoundException
{
Class className=Class.forName("com.Test.First");
Method[] methods=className.getMethods();
System.out.println("First method is" + methods[0]);
}
}
或者
public class test{
public static void main(String args[])
{
try {
Class className=Class.forName("com.Test.First");
Method[] methods=className.getMethods();
System.out.println("First method is" + methods[0]);
}
catch (ClassNotFoundException ex) {
ex.printStackTrace();
}
}
}
关于java - java反射中找不到类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43478125/