1. 概念
反射,一种计算机处理方式。是程序可以访问、检测和修改它本身状态或行为的一种能力。
2. 反射机制的作用
通过反机制访问java类的属性,方法,构造方法等;
3.反射机制中的类
(1) java.lang.Class; 类的对象代表一个类的所有
(2) java.lang.reflect.Constructor; 类的对象代表构造函数
(3) java.reflect.Filed; 类的对象代表属性
(4) java.lang.Method; 类的对象代表方法
(5) java.lang.Modifier; 类的对象代表修饰符
例1:获取Class的三种方式
1 /* 2 获取Class的三种方式 3 */ 4 import java.util.Date; 5 class ReflectTest01 6 { 7 public static void main(String[] args) throws Exception 8 { 9 /*获取ReflectTest01test类*/ 10 //第一种方式 11 //c1引用保存内存地址只想堆中的对象,该对象代表的时ReflectTest01test整个类 12 Class c1= Class.forName("ReflectTest01test"); 13 //第二种方式 14 //java种每个类型都有clas属性 15 Class c2 = ReflectTest01test.class; 16 //第三种方式 17 //java语言种任何一个java对象都有getclass方法 18 ReflectTest01test e = new ReflectTest01test();//e的运行时类时ReflectTest01test 19 Class c3 = e.getClass();//c3时运行时类 20 21 22 System.out.println(c1); 23 System.out.println(c2); 24 System.out.println(c3); 25 /*获取java.util.Date类*/ 26 Class c4 = Class.forName("java.util.Date");//必须写类全名 27 Class c5 = Date.class; 28 29 Date d = new Date(); 30 Class c6 = d.getClass(); 31 32 System.out.println(c4); 33 System.out.println(c5); 34 System.out.println(c6); 35 36 37 } 38 }