Computer >> 컴퓨터 >  >> 프로그램 작성 >> Java

Java의 힙 메모리와 문자열 상수 풀의 차이점은 무엇입니까?


힙 메모리

  • 힙 메모리는 모든 자바 클래스 인스턴스 및 배열에 대한 메모리가 할당되는 런타임 데이터 영역입니다.
  • 힙은 JVM이 시작될 때 생성되며 애플리케이션이 실행되는 동안 크기가 증가하거나 감소할 수 있습니다.
  • 힙 크기는 –Xms VM 옵션을 사용하여 지정할 수 있습니다. 힙은 가비지 수집 전략에 따라 고정 크기 또는 가변 크기일 수 있습니다. 최대 힙 크기는 –Xmx 옵션을 사용하여 설정할 수 있습니다.
  • 기본적으로 최대 힙 크기는 64MB로 설정됩니다.

문자열 상수 풀

  • String은 특수 메모리 위치를 사용하여 String Constant Pool이라는 String 객체를 재사용합니다.
  • new 키워드를 사용하지 않고 생성된 String 객체는 힙의 String Constant Pool 부분에 저장됩니다.
  • String 상수 풀의 중요한 특징 중 하나는 풀에 이미 String 상수가 있는 경우 동일한 String 객체를 생성하지 않는다는 것입니다.