首页 > 其他 > 详细

类的初始化

时间:2016-01-25 13:05:17      阅读:185      评论:0      收藏:0      [点我收藏+]

 

https://github.com/Moriadry/useful-things/tree/master/src/LoadClass

总结

一个类的初始化准备工作如下:

1.加载:这个由类加载器完成,他去查找字节码,并且创建一个Class对象

2.连接:验证类中的字节码,为静态域分配存储空间,并且如果必须的话,将解析这个类创建的对其他类的引用

3.初始化:如果这个类有超类,则对其进行初始化,执行静态初始化器和静态初始化代码块


初始化被延迟到了对静态方法(构造器是隐士的静态方法)或

非静态方法的首次引用才执行


由上面可以知道,接口不能被初始化,如果想定义常量,必须是在接口的字节码被装载到虚拟机的时候他的常量就得被访问,所以他必须是static final的

static final叫编译期常量,不需要初始化就能读取。

类的初始化

原文:http://www.cnblogs.com/mywy/p/5157070.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!