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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 傻瓜一点红 于 2013-5-3 00:15 编辑

用类创建一个对象后,会在堆内存中开辟一个空间来进行存储相关属性和函数,在栈内存中存放局部变量,但是存储的是这个对象,请问那这个类是存放在哪呢?调用这个类来创建对象的时候是从哪调用的呢?有点懵,请大虾指教

评分

参与人数 1技术分 +1 收起 理由
HM汪磊 + 1

查看全部评分

3 个回复

正序浏览
看毕老师的这连个图就知道了
回复 使用道具 举报
内存结构 --> 栈:局部变量都会在栈内存中生成,数据使用完毕,会自动释放;
堆:通过new出来的会在堆内存中生成,都有默认的初始化值,若没有被使用,会被垃圾回收机制清除。
方法区:类变量随着类的加载而存在于方法区中,类中的方法、共享数据存在该区域中。
回复 使用道具 举报
看毕老师画的 方法区 。那个概念我网上搜了下:
   方法区是 在一个jvm实例的内部,类型信息被存储在一个称为方法区的内存逻辑区中。类型信息是由类加载器在类加载时从类文件中提取出来的。类(静态)变量也存储在方法区中。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马