码迷,mamicode.com
首页 > 其他好文 > 详细

类的初始化

时间:2016-01-25 13:08:31      阅读:154      评论: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
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!