목록자바(Java) (1)
개발개발자
문자열 상수풀(String constant pool)과 intern 메소드
문자열을 공부하며 고민됐던 부분이다. String str1 = "aaa";String str2 = "aaa"; String str3 = new String("aaa"); str1 == str2 : truestr1 == str3 : false str1과 str3의 참조값이 같을 것으로 생각했는데 같지 않아서 이유를 찾아보았고 아래와 같이 정리하였다. * 문자열 상수풀 (String constant pool)- 모든 string 객체를 관리하는 pool로, 상수풀(contant pool)은 클래스와 같은 Heap의 고정영역(Permanent Area)에 생성되어 java 프로세스의 종료까지 유지 된다. 이 개념을 바탕으로 문자열 생성 방식에 따라 참조값 동일 여부가 결정 된다. 1. String 클래스 리터..
자바(Java)
2017. 3. 18. 16:35