可以使用以下java.lang.Class类的方法来显示类的元数据。
方法 | 描述 |
---|---|
public Field[] getDeclaredFields()throws SecurityException | 返回一个Field对象数组, 该数组反映由该Class对象表示的类或接口声明的所有字段。 |
public Constructor[] getDeclaredConstructors()throws SecurityException | 返回一个构造函数对象数组, 该对象反映此Class对象表示的类声明的所有构造函数。 |
public Method[] getDeclaredMethods()throws SecurityException | 返回一个Method对象数组, 该对象反映由该Class对象表示的类或接口声明的所有方法。 |
创建Javap工具的示例
让我们创建一个类似于javap工具的程序。
import java.lang.reflect.*;
public class MyJavap{
public static void main(String[] args)throws Exception {
Class c=Class.forName(args[0]);
System.out.println("Fields........");
Field f[]=c.getDeclaredFields();
for(int i=0;i<f.length;i++)
System.out.println(f[i]);
System.out.println("Constructors........");
Constructor con[]=c.getDeclaredConstructors();
for(int i=0;i<con.length;i++)
System.out.println(con[i]);
System.out.println("Methods........");
Method m[]=c.getDeclaredMethods();
for(int i=0;i<m.length;i++)
System.out.println(m[i]);
}
}
在运行时, 你可以获取任何类的详细信息, 它可以是用户定义的或预定义的类。
评论前必须登录!
注册