Java의 문자열 풀 탐색
다음 코드를 고려하세요.
String first = "abc"; String second = new String("abc");
질문 1: 문자열 풀 신규 사용 키워드
Java가 new String() 생성자를 사용하여 두 번째를 초기화할 때 완전히 새로운 abc String 인스턴스를 생성합니까?
답변: 예, new를 사용합니다. 새로운 문자열 객체 생성을 보장합니다.
질문 2: 힙 및 문자열 풀 저장소
새 키워드에서 새로 생성된 String 인스턴스가 일반 힙에 저장됩니까, 아니면 String 풀에 저장됩니까?
답변: 모든 개체, String 객체를 포함하여 힙에 상주합니다. 문자열 풀은 별도의 메모리 영역이 아닙니다. 이는 캐시와 유사한 메커니즘입니다.
질문 3: 문자열 풀 개수
"abc" 문자열의 인스턴스가 문자열 풀에 몇 개나 들어가나요?
답변: 일반적으로 불변 문자열 리터럴을 생성하면 Java가 자동으로 문자열 풀에 있습니다. 그러나 이 특정 시나리오에서는
따라서 이 경우에는 하나 "abc" 문자열 인스턴스가 문자열 풀에 존재합니다.
위 내용은 Java의 문자열 풀은 `new` 키워드로 생성된 문자열을 어떻게 처리합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!