나는 약간 혼란 스러워요 분명 여기에 뭔가 빠진 :자바 문자열 "상수"혼란
내가 읽어 java.lang.String의의 "상수이므로 만든 후에 값을 변경할 수 없습니다."
하지만 난 다음 코드를 작성하는 경우 :
String line;
line = "Test1";
System.out.println(line);
line = "Test2";
System.out.println(line);
터미널 출력 : 내가 값을 설정 한 다음 나중에 문자열에 대한 다른 값을 설정할 수 있어요 나타납니다
Test1
Test2
합니다.
난이 방법을 시도하는 경우에는 차이 :
String line2 = "Test3";
System.out.println(line2);
line2 = "Test4";
System.out.println(line2);
나는 여전히 처음에 설정 한 후 값을 설정할 수 있어요.
여기서 내가 어디로 잘못 갔습니까?
감사합니다.
예에서는 값을 수정하지 않고 참조를 수정합니다. –
http://en.wikipedia.org/wiki/Immutable_object – Habib
모든 답장을 보내 주셔서 감사합니다. 레퍼런스가 무엇이 바뀌 었는지에 대한 정확한 인식. 이것은 어떤 객체를위한 것인가 아니면 원시 타입에도 역시 적용 되는가? – Xerphiel