java 中的反射API 暑假第十天


java 中的反射API 反射API 当我们在开发Debugger的时候用到 反射API可以获得一个类的内部构造 定义的成员 方法 构造函数 。。。

java.lang.reflect.* 必须导入因为java.lang会自动导入但是 子包却不会 这个包中有一堆类 如 Method Field Construction类 等等

java.lang.Class 中的函数可以获得 这些类的数组 例如getDeclaredFields() 返回声明的 所有 变量的一个Field 数组
getDeclaredConstructions()返回声明的所有的Construction类构造函数的数组
getDeclaredMethods() 返回所有的Method方法 我们可以利用System.out.println()输出类

*/
import java.lang.reflect.* ;
class Test
{
public static void main(String[]args) throws Exception //声明抛出异常 那么我们就不用捕捉了
{
if(args.length!=1)
System.exit(-1);
else
{
Class c1= Class.forName(args[0]);
Constructor []cons=c1.getDeclaredConstructors(); //获得定义的构造函数
Method []meds=c1.getDeclaredMethods(); //获得定义的方法
Field []fies=c1.getDeclaredFields() ;//获得定义的字段也就是变量
for(int n=0;n<cons.length;n++)
System.out.println(cons[n]); //输出定义的构造函数
for(int n=0;n<meds.length;n++)
System.out.println(meds[n]); //输出定义的方法
for(int n=0;n<fies.length;n++)
System.out.println(fies[n]); //输出定义的成员变量
}
}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值