>  기사  >  Java  >  Java 스택과 힙의 차이점에 대한 자세한 소개

Java 스택과 힙의 차이점에 대한 자세한 소개

高洛峰
高洛峰원래의
2017-01-24 14:40:471736검색

Java 스택과 힙의 차이점

1. 가비지 수집 메커니즘은 힙 메모리에서만 작동하며 스택 메모리와는 관련이 없습니다.

스택: 액세스 속도 스택은 힙보다 빠릅니다. 로컬 변수 및 객체 참조 값을 저장합니다. ​

3. 힙: 더 큰 변수를 저장합니다.

스택에는 매우 중요한 특수 기능이 있습니다. 즉, 스택에 저장된 데이터를 공유할 수 있습니다.

컴파일러는 int a = 3을 처리할 때 먼저 스택에 변수 a에 대한 참조를 생성한 다음 값 3이 존재하는지 확인합니다. 존재하지 않으면 3을

에 저장합니다. b = 3을 처리할 때도 마찬가지입니다. 이전에 3이 저장되었으므로 이때 컴파일러는 다음 작업만 수행하면 됩니다. 변수 b를 생성하고 3을 지정합니다(공간 절약에 좋습니다).
이때, a와 b는 동시에 3을 가리키지만, 사용에는 영향을 미치지 않습니다. 이때 a=4;라고 정의하면 메모리에 4를 저장해야 하고, a는 4를 가리킨다. a 값을 수정해도 b 값에는 영향을 미치지 않는다.

内存的划分:
 
 
1,寄存器。
2,本地方法区。
3,方法区。
4,栈内存。
 存储的都是局部变量。
 而且变量所属的作用域一旦结束,该变量就自动释放。
5,堆内存。
 存储是数组和对象(其实数组就是对象) 凡是new建立在堆中。
 特点:
 1,每一个实体都有首地址值。
 2,堆内存中的每一个变量都有默认初始化值,根据类型的不同而不同。整数是0,小数0.0或者0.0f,boolean false char '\u0000'
 3,垃圾回收机制。

읽어주셔서 감사합니다. 모두에게 도움이 되기를 바랍니다. 이 사이트를 지원해 주셔서 감사합니다!

자바 스택과 힙의 차이점에 대한 자세한 소개는 PHP 중국어 홈페이지를 참고해주세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.