关于java 反射机制的问题 总是报错

来源:百度知道 编辑:UC知道 时间:2024/07/07 09:07:20
编译都不能通过
也就是Class c = Class.forName("abc.UserBean"); 这一行
总是提示说未处理的异常类型

package abc;
import java.lang.reflect.*;

public class ref
{
public static void main(String args[])
{
Class c = Class.forName("abc.UserBean");
Method m[] = c.getMethods();
for(int i = 0; i < m.length; i ++)
{
System.out.println(m[i].toString());
}
}
}

class UserBean{
private String userName ="admin";
private String passWord = "888";
public String getPassWord() {
return passWord;
}
public void setPassWord(String passWord) {
this.passWord = passWord;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public void setUserNam

java中有些方法定义中是允许抛出可能出现的异常的,你的这个class方法在
API中是这样定义的public static Class<?> forName(String className)
throws ClassNotFoundException他默认抛出的是找不到类异常。改正应该在这一句外面加上
try {
Class c = Class.forName("abc.UserBean");
}catch(Exception e){}
这样就不会错了。(Exception是一切异常类的父类)

要用try {}catch(Exception e){}处理