java获取反射机制的3种方法总结
作者:Grady_Camel
这篇文章主要给大家介绍了关于java获取反射机制的3种方法,文中通过示例代码介绍的非常详细,对大家学习或者使用java具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
反射机制的概念:
指在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法,对于任意一个对象,都能调用它的任意一个方法.这种动态获取信息,以及动态调用对象方法的功能叫java语言的反射机制.
反射机制的应用:
生成动态代理,面向切片编程(在调用方法的前后各加栈帧).
反射机制的原理:
1 首先明确的概念: 一切皆对象----类也是对象.
2 然后知道类中的内容 :modifier constructor field method.
3 其次明白加载: 当Animal.class在硬盘中时,是一个文件,当载入到内存中,可以认为是一个对象,是java.lang.class的对象.
java 获取反射常使用的三种方式:
1.通过new对象实现反射机制
2.通过路径实现反射机制
3.通过类名实现反射机制
- 通过Object类的getClass方法来获取
- 使用.class的方式
- 使用Class.forName方法
例子:
建立一个学生类:
public class Student { private int id; String name; protected boolean sex; public float score; }
获取反射机制
public class Get { //获取反射机制三种方式 public static void main(String[] args) throws ClassNotFoundException { //方式一(通过建立对象) Student stu = new Student(); Class classobj1 = stu.getClass(); System.out.println(classobj1.getName()); //方式二(所在通过路径-相对路径) Class classobj2 = Class.forName("fanshe.Student"); System.out.println(classobj2.getName()); //方式三(通过类名) Class classobj3 = Student.class; System.out.println(classobj3.getName()); } }
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持。