java初探十九之反射_Class

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对象
java初探十九之反射_Class_第1张图片

java初探十九之反射_Class_第2张图片

你可能感兴趣的:(java学习笔记)