Java类加载过程
2015-06-16 17:09
621 查看
1.加载,将.class文件加载到内存
2.创建Class,创建对应的java.lang.Class对象(java.lang.Class对象用来封装该类在方法区的数据结构)
3.验证,检查.class文件的是否符合.class文件规范
4.准备,为静态变量分配内存并赋上默认值(如static int i=5,这时候i被赋值为0)
5.连接,将符号引用(.class文件中对引用关系的描叙)转换为直接引用(真实的内存地址引用)
6.初始化,为静态变量赋上初始值(如static int i=5,这时候i被赋值为5),并执行静态代码块。
2.创建Class,创建对应的java.lang.Class对象(java.lang.Class对象用来封装该类在方法区的数据结构)
3.验证,检查.class文件的是否符合.class文件规范
4.准备,为静态变量分配内存并赋上默认值(如static int i=5,这时候i被赋值为0)
5.连接,将符号引用(.class文件中对引用关系的描叙)转换为直接引用(真实的内存地址引用)
6.初始化,为静态变量赋上初始值(如static int i=5,这时候i被赋值为5),并执行静态代码块。
相关文章推荐
- Spring Boot开发之弄月吟风 (三)
- java堆内存
- 使用Eclipse开发Teamcenter RAC
- Spring Boot开发之流水无情(二)
- ImageMagick使用for java(im4java)
- Spring Boot开发之明月千城(一)
- Java中JTextArea如何添加滚动条
- Java初级笔记_面向对象3
- 接口测试-自动化-Java-总结
- day03 Java基础
- java面向对象基础 封装性
- (转)spring ioc原理(看完后大家可以自己写一个spring)
- Spring学习笔记之 Spring IOC容器(一)
- Java学习笔记——自动装箱、拆箱 & String初始化
- [转]java 中的序列化是什么意思?有什么好处?
- JAVA中重载和重写的区别
- Timing Wheel 时间轮算法 java实现
- 使用visualvm远程监控java进程(以hadoop进程为例)
- java系统高并发解决方案之图片服务器分离
- Java异常 finally语句