인프런 커뮤니티 질문&답변
runtime constant pool 에 대해 질문드립니다!
작성
·
343
0
1. Integer autoboxing 할 때, constant byte code 가 어떻게 되는 지 궁금해서 명령어 찾아봐서 한번 출력해보았습니다!
근데 상수 값이 안나오는걸 확인해서 stackoverflow에 찾아보니
작은 값에 대해서는 특정 instruction을 사용해서 관리한다고 해서 어느정도 납득이 됐었는데,
#10을 보시면 Integer가 하나만 출력되있더라구요
이게 Integer를 사용할떄 -127~127캐싱하는 것때문에 한번만 선언되나 해봐서 다음과 같이 해봤더니 똑같이 출력되었는데,
클레스 정보를 한번만 할당해서 메모리 효율을 높이기 위함이라고 생각하면 될까요?!
2. 문득 constant pool 에 대한 메모리 관리에 대해서도 궁금해 졌는데, 사용하지 않는 상수에 대해서 runtime constant pool 도 메모리 해지가 일어나나요?
좀 찾아본 결과로는 jit 에 의해서 사용하지 않는 primitive 나 local변수가 제거된다는데 맞는 정보일까요
퀴즈
41%나 틀려요. 한번 도전해보세요!
JVM의 주된 역할은 무엇일까요?
Java 소스 코드를 컴파일한다.
바이트코드를 운영체제별 코드로 변환하고 실행한다.
Java 개발에 필요한 모든 도구를 제공한다.
표준 Java 라이브러리만 제공한다.





