一起来学大数据|Java中的反射机制(非常重要)

一起来学大数据|Java中的反射机制(非常重要)

在上篇文章中,我们提及到了class.forName()这个代码,那么这是个什么呢?我们为什么要使用这种方式来加载Driver驱动呢?其实这就是java中的类加载器和反射,下面我们一起来看看。

反射机制

java的反射机制的目的就是要增加程序的灵活性,它能够有效的避免将程序写死在我们的代码中。

举个简单的例子:

  1. 不使用反射:实我们例化一个 A()对象, 先不去使用java的反射,new一个A(),这时候,我们如果想要去实例化别的类, 那么必须去修改源代码,并重新编译。
  2. 使用反射: class.forName("A").newInstance(); 而且这个类描述我们可以写到配置文件中,如 ***.xml配置文件, 这样如果想实例化其他类,只要修改配置文件的"类描述"就可以了实现,不需要再次去修改我们的代码并编译。
一起来学大数据|Java中的反射机制(非常重要)
一起来学大数据|Java中的反射机制(非常重要)

这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。

一起来学大数据|Java中的反射机制(非常重要)

获取Class对象的3种方式

一起来学大数据|Java中的反射机制(非常重要)

获取Class对象的3种方式

三种方式的比较

这里我们可以明显的看到,前两种方式,我们必须明确Person类型。

而第三种方式是,我们知道这种类型的字符串就行.这种扩展更强.我不需要知道你的类.我只提供字符串,按照配置文件加载就可以了。

反射获取构造方法

一起来学大数据|Java中的反射机制(非常重要)

构造方法

一起来学大数据|Java中的反射机制(非常重要)

创建对象

一起来学大数据|Java中的反射机制(非常重要)

反射获取成员变量

一起来学大数据|Java中的反射机制(非常重要)

反射获取成员变量

一起来学大数据|Java中的反射机制(非常重要)

实例1

一起来学大数据|Java中的反射机制(非常重要)

实例2

放射获取成员方法

一起来学大数据|Java中的反射机制(非常重要)

放射获取成员方法上面就是我们对Java中的反射的简单举例,明天我们将对java中同样重要的类加载器进行详细的说明。如果有帮助的大家,关注支持一下哟~

感谢坚持关注的朋友


世界很大,幸好有你

欢迎在评论区留下你的问题或困惑,我将每天与你分享我的观点和心得。

聚焦最新科技咨讯,探寻未来智能领域,我是女陶。

猜你喜欢

转载自blog.csdn.net/qq_41147260/article/details/81015433