import java.lang.reflect.*;
public class Example
{
public static void printMember(Member []obj)
{
for(int i=0;i<obj.length;i++)
System.out.println(obj[i]);
}
public static void main(String []args)
{
try
{
Class c=Class.forName("Person");
Field []field=c.getFields();
System.out.println("Field>>>>>>>>>>>>>>>>>>>>>>>>>>>>");
printMember(field);
Constructor[] constructor=c.getConstructors();
System.out.println("Constructor>>>>>>>>>>>>>>>>>>>>>>>>>>>>");
printMember(constructor);
Method []method=c.getMethods();
System.out.println("Method>>>>>>>>>>>>>>>>>>>>>>>>>>>>");
printMember(method);
}
catch(ClassNotFoundException e)
{
System.out.println("ClassNotFoundException");
System.out.println(e.getStackTrace());
}
}
}
class Person
{
private String name;
public int age;
public Person()
{
name=new String("Li Li");
age=24;
}
public void show()
{
System.out.println("name: "+name+"; age: "+age);
}
}在程序进入class.forname()的时候,捕捉到异常,请问这个地方该怎么处理!!!
public class Example
{
public static void printMember(Member []obj)
{
for(int i=0;i<obj.length;i++)
System.out.println(obj[i]);
}
public static void main(String []args)
{
try
{
Class c=Class.forName("Person");
Field []field=c.getFields();
System.out.println("Field>>>>>>>>>>>>>>>>>>>>>>>>>>>>");
printMember(field);
Constructor[] constructor=c.getConstructors();
System.out.println("Constructor>>>>>>>>>>>>>>>>>>>>>>>>>>>>");
printMember(constructor);
Method []method=c.getMethods();
System.out.println("Method>>>>>>>>>>>>>>>>>>>>>>>>>>>>");
printMember(method);
}
catch(ClassNotFoundException e)
{
System.out.println("ClassNotFoundException");
System.out.println(e.getStackTrace());
}
}
}
class Person
{
private String name;
public int age;
public Person()
{
name=new String("Li Li");
age=24;
}
public void show()
{
System.out.println("name: "+name+"; age: "+age);
}
}在程序进入class.forname()的时候,捕捉到异常,请问这个地方该怎么处理!!!
我调试的输出的结果是:
Field>>>>>>>>>>>>>>>>>>>>>>>>>>>>| 15 |
Field>>>>>>>>>>>>>>>>>>>>>>>>>>>>
0:public int Person.age
Constructor>>>>>>>>>>>>>>>>>>>>>>>>>>>>
0:public Person()
Method>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Method>>>>>>>>>>>>>>>>>>>>>>>>>>>>[Ljava.lang.reflect.Method;@9cab16
0:public void Person.show()
1:public native int java.lang.Object.hashCode()
2:public final native java.lang.Class java.lang.Object.getClass()
3:public final void java.lang.Object.wait() throws java.lang.InterruptedException
4:public final void java.lang.Object.wait(long,int) throws java.lang.InterruptedException
5:public final native void java.lang.Object.wait(long) throws java.lang.InterruptedException
6:public boolean java.lang.Object.equals(java.lang.Object)
7:public final native void java.lang.Object.notify()
8:public final native void java.lang.Object.notifyAll()
9:public java.lang.String java.lang.Object.toString()
加上包名,如Class c=Class.forName("com.xxx.Person");
再跑就好了,我这里能跑,不知道楼主那里如何.