1.反射机制中的类
java.lang.Class;
java.lang.reflect.Constructor;//构造方法
java.lang.reflect.Field;//属性
java.lang.reflect.Method;//方法
java.lang.reflect.Modifier;//修饰符
2.反射机制的作用:
(1)反编译: .class–>.java
(2)通过反射机制访问java对象的属性,方法,构造方法等。
3.获取Class的三种方式
package fanshe;
import java.util.Date;
public class fanshe1 {
public static void main(String[] args) throws ClassNotFoundException {
//第一种方式
Class c1=Class.forName("Employee");//c1引用保存内存地址指向堆中的对象,该对象代表
//Employee整个类
//第二种方式
//java中每个类型都有class属性。
Class c2=Employee.class;
//第三种方式
//java语言中任何一个java对象都有getClass方法
Employee e=new Employee();
Class c3=e.getClass();//c3是运行时类(e的运行时类是Employee)
//因为在JVM中只有一个employee类,所以c1 c2 c3的内存地址是相同的,指向堆中唯一的对象
System.out.println(c1==c2);//true
System.out.println(c2==c3);//true
Class c4=Date.class; //c4代表 Date这个类
Class c5=Class.forName("java.util.Date");
Date d=new Date();
Class c6=d.getClass();
System.out.println(c4==c5);//true
System.out.println(c5==c6);//true
//c7代表int类型
Class c7=int.class;
}
}
3.Class 创建java对象