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

Person对象的初始化过程

时间:2018-01-27 11:34:42      阅读:132      评论:0      收藏:0      [点我收藏+]

标签:静态代码块   直接   建立   stat   文件   显示   第一步   .class   代码   

Person p = new Person();
第一步:先在栈内存中开辟空间 p
第二步:因为 new 用到了 Person.class 所以会先到硬盘中找到 Person.class 文件,通过jvm加载到内存中
第三步:如果该类中有静态代码块,执行静态代码块,给 Person.class 类初始化
第四步:在堆内存中开辟空间,分配内存地址
第五步:在堆内存中建立对象特有属性,并进行默认初始化
第六步:对堆内存中对象的特有属性,进行显示初始化
第七步:对对象进行构造代码块初始化(在类中直接定义,没有加static关键字修饰的代码块)
第八步:对对象进行对应的构造函数初始化
第九步:将内存地址值赋给栈内存中的变量p

Person对象的初始化过程

标签:静态代码块   直接   建立   stat   文件   显示   第一步   .class   代码   

原文地址:http://blog.51cto.com/13579086/2065717

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!