java培训SE基础之Java内存管理

1 内存分类

1.1. 栈和堆

在java培训中SE基础内容中的内存管理分为两部分, 一部分是栈, 另外一部分是堆.

栈(stack)是后进先出的内存结构, 主要作用是方法调用时使用, 在内存中占用的空间比较小

堆(heap)是内存的绝大部分空间, 没有特定的结构, 堆内存的特点是大.

       堆内存分为两部分, 一部分是方法区, 另外一部分称为GC区

2 垃圾回收

2.1. 什么是垃圾

主要是指在堆内存中的GC区中, 由于对象不再使用后, 对象所占用的空间应该被释放, 这个空间就称为垃圾, 这个对象就称为垃圾对象

2.2. 垃圾如何回收

垃圾的回收是由GC(垃圾回收器)在后台处理, 在程序中,当某个对象不再有引用指向时, 这个对象就变为垃圾对象, 对象占用的空间就会由GC标记为可用状态, 这样,再次创建新对象时, 就可以使用这个可用空间, 从而可以实现自动的内存清理.

3 对象创建

3.1. 对象创建在哪里

对象创建在GC区中

3.2. 对象创建过程

1) 在方法区中加载类模板

2) 依据类模板中属性的定义, 在GC区中开辟空间

3) 把这个空间的地址返回给对象的创建者中的引用变量

3.3. 对象销毁

当一个对象被认定是垃圾后, 由GC在后台负责销毁此对象, 并释放内存空间.

想要了解跟多关于Java培训课程内容欢迎关注尚硅谷Java培训,尚硅谷除了这些技术文章外还有免费的高质量Java培训训课程视频供广大学员下载学习


上一篇:
下一篇:
关于尚硅谷
教育理念
名师团队
学员心声
资源下载
视频下载
资料下载
工具下载
加入我们
招聘岗位
岗位介绍
招贤纳师
联系我们
电话:010-56253825
邮箱:info@atguigu.com
地址:北京市昌平区宏福科技园综合楼6层(北京校区)

 深圳市宝安区西部硅谷大厦B座C区一层(深圳校区)

上海市松江区谷阳北路166号大江商厦6层(上海校区)