好的,通过上一篇我写的渣渣文章,我们也许已经看到了,JAVA反射在开发过程中,或者设计某些框架过程中的潜在潜力!对吧?你说你没有!!那你一定没有好好看代码!!!你连那么简单的代码都懒得看?还学什么反射???赶紧系统调用remark吧。
这一篇文章我们继续来了解反射的源头。话不多说。
首先,我们要知道JAVA程序的运行的几个阶段(下面借用了一个博主的博客)
第一个阶段(源代码阶段):
先从java文件按成员变量,构造方法,成员方法通过javac编译成class文件。如上图Person.java-->Person.class
第二个阶段(Class类对象阶段):
通过类加载器把class文件中的成员变量,构造方法,成员方法加载到内存中。
第三个阶段(Runtime运行时阶段):
该阶段就可以创建对象和调用对象里的方法了。
————————————————
版权声明:本文为CSDN博主「yang名扬」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/u011442726/article/details/99060961
-------------------------------------------------
好啦,我又回来了!!!!所以,上面说了JAVA代码在运行之前我们要经历的阶段,第一个阶段:将java文件转换为字节码文件。第二个阶段:通过类加载器将字节码文件加载到内存中,同时在内存中为每个类创建一个专属的Class类对象(这句话才是重点重点重重点!!!!)第三个阶段:运行呗
咳咳。。。。。。。。上面我说的你明白了吧?没明白????这都看不懂?学啥?Remark吧
好了,我们上面说了,类加载器在加载我们的字节码文件时,会为我们每一个类都在内存中创建一个Class类对象,对吧。就是通过这个Class类对象,才使得我们能够在运行过程中获取到对象所属类的全部信息。
那么,我们如何获取Class类对象呢????
四种方式(①②不常用 ③最常用 ④不如③)
谢谢大家的观看!有缘再见!