反射机制

Posted moxiaotao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了反射机制相关的知识,希望对你有一定的参考价值。

一、什么是反射?

Java反射说的是在运行状态中,对于任何一个类,我们都能够知道这个类有哪些方法和属性。对于任何一个对象,我们都能够对它的方法和属性进行调用。我们把这种动态获取对象信息和调用对象方法的功能称之为反射机制。

二、反射的三种方式

这里需要跟大家说一下,所谓反射其实是获取类的字节码文件,也就是.class文件,那么我们就可以通过Class这个对象进行获取。

1、第一种方式

技术图片

这个方法其实是Object的一个方法,Class继承了Object,所以我们可以直接使用。

技术图片

2、第二种方式

技术图片

3、第三种

这里需要注意,通过类的全路径名获取Class对象会抛出一个异常,如果根据类路径找不到这个类那么就会抛出这个异常。

技术图片

那么这3中方式我们一般选用哪种方式呢?第一种已经创建了对象,那么这个时候就不需要去进行反射了,显得有点多此一举。第二种需要导入类的包,依赖性太强。所以我们一般选中第三种方式。

以上是关于反射机制的主要内容,如果未能解决你的问题,请参考以下文章

Java反射机制详解

反射机制在java中如何做呀?

Java Reflection (JAVA反射)机制详解

java反射机制

[转]Java反射机制详解

java 中反射机制和内省机制的区别是啥?