불변 객체1 상수풀과 String 상수풀은 힙 영역 내부에 문자열 객체를 위해 별도로 관리하는 저장소입니다. 만약 상수풀에 같은 값을 가진 String 객체가 존재하면 그 객체의 주솟값을 참조하며, 값을 찾지 못하면 상수풀에 해당하는 값을 가진 문자열 객체를 생성하고 그 주솟값을 반환합니다. 리터럴로 선언한 경우 내부적으로 String의 intern( ) 메서드를 호출합니다. 리터럴("")로 String 객체를 생성하면 JVM은 먼저 상수풀을 탐색합니다. 만약 같은 값을 가진 String 객체를 찾으면 그 객체의 주소 값을 반환해서 참조하며, 이를 찾지 못할 경우 상수풀에 해당 값을 가진 String 객체를 생성하고 그 주소 값을 반환합니다. 이는 intern( ) 메서드를 통해 등록되는데요, String.equals( ) 반환값이 tr.. 2022. 2. 20. 이전 1 다음