张文鹏个人博客系统
炫酷文字跳动漂浮js特效代码

为什么很多人都想成功,但成功的人只是极少数?不是因为成功有多困难,其实成功简单得很,只要你一开始都有计划,并且能一直做下去,总会成功的。关键是如何面对成功,你失败了,起码还有人同情你,而成功了,连得到同情的机会都没有。 一匹真正的好马,即使在鞭子的影子下,也能飞奔。 如果你没有把握做到,最好就不要承诺,你什么也不承诺,至少别人不会看不起你。 一本好书,就像高级武功秘籍一样,哪怕只是从里面领悟到个一招半势,功力提升起来都是惊人的。 永不放弃,永不放弃又有两个原则,第一个原则是永不放弃,第二个原则就是:当你想放弃时回头看第一个原则。

欢迎来到zwp博客 用心记录点滴生活
博客信息

java反射学习(一)

0
发布时间:『 2018-02-26 22:10 』  博客类别:Java  阅读(306)  评论(0)

第1章 类加载器

1.1 类的加载

当程序要使用某个类时,如果该类还未被加载到内存中,则系统会通过加载,连接,初始化三步来实现对这个类进行初始化。

加载 

就是指将class文件读入内存,并为之创建一个Class对象。

任何类被使用时系统都会建立一个Class对象

连接

验证 是否有正确的内部结构,并和其他类协调一致

准备 负责为类的静态成员分配内存,并设置默认初始化值

解析 将类的二进制数据中的符号引用替换为直接引用

初始化 

就是我们以前讲过的初始化步骤

1.2 类初始化时机

1. 创建类的实例

2. 类的静态变量,或者为静态变量赋值

3. 类的静态方法

4. 使用反射方式来强制创建某个类或接口对应的java.lang.Class对象

5. 初始化某个类的子类

6. 直接使用java.exe命令来运行某个主类

1.3 类加载器

负责将.class文件加载到内在中,并为之生成对应的Class对象。

虽然我们不需要关心类加载机制,但是了解这个机制我们就能更好的理解程序的运行

1.4 类加载器的组成

Bootstrap ClassLoader 根类加载器

也被称为引导类加载器,负责Java核心类的加载

比如System,String等。在JDK中JRE的lib目录下rt.jar文件中

Extension ClassLoader 扩展类加载器

负责JRE的扩展目录中jar包的加载。

在JDK中JRE的lib目录下ext目录

System ClassLoader 系统类加载器

负责在JVM启动时加载来自java命令的class文件,以及classpath环境变量所指定的jar包和类路径。


通过这些描述就可以知道我们常用的类,都是由谁来加载完成的。

到目前为止我们已经知道把class文件加载到内存了,那么,如果我们仅仅站在这些class文件的角度,我们如何来使用这些class文件中的内容呢?

这就是我们反射要研究的内容。


关键字:   java反射笔记  
评论信息
暂无评论
发表评论
验证码: 
jquery轮播效果图
励志美句

越努力越幸运!

  • 1
  • 2
  • 3
  • 4
< >
你是本站第位访客
苏ICP备17048714