目录
二、反射的使用3种获取方式(这里使用Student类做演示)
2.1 类名.class; 2.2 对象名.getClass(); 2.3 Class.forName(全限定名/全路径名)(最常用)
一、反射的概述
JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。
要想解剖一个类,必须先要获取到该类的字节码文件对象。而解剖使用的就是Class类中的方法.所以先要获取到每一个字节码文件对应的Class类型的对象.
二、反射的使用3种获取方式(这里使用Student类做演示)
2.1 类名.class;
2.2 对象名.getClass();
2.3 Class.forName(全限定名/全路径名)(最常用)
2.43种获取类对象方式的代码
//java反射 是java中的一种重要机制
//他可以动态的读写属性,调用方法
//一切反射相关的代码都从获取类对象开始
//获取类对象
//1.类名点class Student stu = new Student();
Class clazz = Student.class;
System.out.println(clazz);
System.out.println("----------对象名点-----------");
//2对象名点getclass();
Student stu = new Student();
Class clazz1 = stu.getClass();
System.out.println(clazz1);
System.out.println("-------------Class.forName---------------");
//3.Class.forName(全限定名)
Class clazz2 = Class.forName("com.zking.reflection.Student");
System.out.println(clazz2);
2.5 控制台打印效果
三.根据类得到类的属性的方法如下
Field field=cla.getField(“属性名”);