[table=98%,rgb(217, 237, 21 ][tr][td]
学习就要多问一些“为什么”和“怎么”,这样才有助于提高。这就是著名的5W2H理论!
一、JAVA内存管理机制概述
让我们先了解一下垃圾收集的工作原理。垃圾收集器的工作就是寻找那些不再被应用程序需要的对象,当它们不会再被访问或引用的时候清除它们。所以如果使用完变量后,最好将其马上置为null ,这样gc 才会认为它不会再被访问或引用。
本文将介绍Java 内存管理机制,并以int 变量和String 为例来,来讨论它们是如果使用内存的。
Java 内存分为栈(stack) 与堆(heap) ,这两种都是由Java 自动来管理,程序员是不能通过编程来控制的。下面来介绍这两种内存:
堆(heap) 内存:用于存放类的对象,如Data d1 = new Date() ,d1 是分配在堆内存中的,堆是由垃圾回收来负责的,堆的优势是可以动态地分配内存大小。
栈(stack) 内存:用于存放基本类型的变量,如int a = 5, a 是分配在栈内存中的,栈内存中的数据是可以共享。
二、JAVA内存管理举例分析
1. Java内存管理举例 --- int变量
当在系统中声明一个int 变量时,系统做了哪些工作呢,如图1 :
[/td][/tr][/table] |