黑马程序员技术交流社区

标题: 【成都校区】 [打印本页]

作者: 没有退路    时间: 2019-10-17 11:17
标题: 【成都校区】
反射 反射的概述【理解】 获取Class类对象的三种方式【应用】      三种方式分类 示例代码public class ReflectDemo {
    public static void main(String[] args) throws ClassNotFoundException {
        //使用类的class属性来获取该类对应的Class对象
        Class<Student> c1 = Student.class;
        System.out.println(c1);

        Class<Student> c2 = Student.class;
        System.out.println(c1 == c2);
        System.out.println("--------");

        //调用对象的getClass()方法,返回该对象所属类对应的Class对象
        Student s = new Student();
        Class<? extends Student> c3 = s.getClass();
        System.out.println(c1 == c3);
        System.out.println("--------");

        //使用Class类中的静态方法forName(String className)
        Class<?> c4 = Class.forName("com.itheima_02.Student");
        System.out.println(c1 == c4);
    }
} 反射获取构造方法并使用【应用】  Class类获取构造方法对象的方法  Constructor类用于创建对象的方法
方法名
说明

T newInstance(Object...initargs)根据指定的构造方法创建对象 反射获取构造方法并使用练习1【应用】
基本数据类型也可以通过.class得到对应的Class类型
反射获取构造方法并使用练习2【应用】 反射获取成员变量并使用【应用】  Class类获取成员变量对象的方法      Field类用于给成员变量赋值的方法
方法名
说明

voidset(Object obj,Object value)给obj对象的成员变量赋值为value 反射获取成员变量并使用练习【应用】 反射获取成员方法并使用【应用】 Class类获取成员方法对象的方法        Method类用于执行方法的方法
方法名
说明

Objectinvoke(Object obj,Object... args)调用obj对象的成员方法,参数是args,返回值是Object类型 反射获取成员方法并使用练习【应用】 反射的案例【应用】 反射练习之越过泛型检查 运行配置文件中指定类的指定方法





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2