如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
第20章反射20.1反射概述20.1反射概述20.2反射API20.2反射API【例题20-1】Class类演示publicclassClassDemo{publicstaticvoidmain(String[]args)throwsClassNotFoundException{Classc=Class.forName("java.lang.String");display(c);Personp=newPerson();c=p.getClass();display(c);c=int.class;display(c);}publicstaticvoiddisplay(Classc){System.out.println(c.getName());System.out.println(c.getPackage());System.out.println(c.isInterface());for(inti=0;i<80;i++)System.out.print("-");System.out.println("");}}程序运行结果20.2反射API20.3反射机制应用【例题20-2】解析Java类结构演示publicclassParserDemo{publicstaticvoidmain(String[]args)throwsClassNotFoundException{Classc=Class.forName(“com.xjj.next.chapter20.Person");Field[]field=c.getDeclaredFields();for(Fieldf:field){System.out.println("属性名:"+f.getName());System.out.println("数据类型:"+f.getType());intmod=f.getModifiers();System.out.println("修饰符:"+Modifier.toString(mod));display();}Method[]method=c.getDeclaredMethods();for(Methodm:method){System.out.println("方法名:"+m.getName());System.out.println("返回值类型:"+m.getReturnType());intmod=m.getModifiers();System.out.println("修饰符:"+Modifier.toString(mod));display();}Constructor[]constructor=c.getDeclaredConstructors();for(Constructorcon:constructor){System.out.println("构造方法名:"+con.getName());intmod=con.getModifiers();System.out.println("修饰符:"+Modifier.toString(mod));System.out.print("参数列表:");Classpts[]=con.getParameterTypes();for(inti=0;i<pts.length;i++){if(i!=0)System.out.print(",");System.out.print(pts[i]);}System.out.println();display();}Packagep=c.getPackage();System.out.println("当前类所在包:"+p);}publicstaticvoiddisplay(){for(inti=0;i<60;i++)System.out.print("-");System.out.println("");}}程序运行结果20.3反射机制应用【例题20-3】对象操作演示publicclassObjectOperationDemo{@SuppressWarnings("unchecked")publicstaticvoidmain(String[]args){try{Classc=Class.for