A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© Y1011 中级黑马   /  2015-7-22 21:24  /  229 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

1、在创建对象时,会先判断对象所属的类型(类)在内存中是否存在,如果存在则直接使用;如果不存在,则把类加载到内存中的方法区下
2、在把类(.class)加载到方法区时,分两种情况:
2.1、从.class文件的上面向下依次加载内容
2.2、静态的内容加载到方法区的静态区域下
非静态内容加载到方法区的非静态区域下
3、当.class中的内容全部加载到方法区后,会对静态区域下的所有静态变量进行默认初始化
4、当所有的静态变量默认初始化完成之后,再对静态变量进行显式初始化
5、在对所有的静态变量显式初始化完成之后,会调用静态代码块进入到栈中执行
6、只有在所有的静态代码块全部执行(按照静态代码块在.class文件中的先后书写顺序执行)完之后,整个.class的加载才完成。

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马