class Exercise6_19
{
public staitc void change(String str){
str+="456";
}
public static void main(String[] args)
{
String str="ABC123";
System.out.println(str);
change(str);
System.out.println("After change:"+str);
}
}
제가 쓴 답은 ABC123
After change: ABC123456 이지만
답은 ABC123
After change: ABC123 이더군요
이해가 안됩니다
위에코드를 제가 해석하기엔
str주소값을 0x100이라고 할때
str문자열 0x100에 ABC123을 참조하고
str참조값을 출력하고
change메서드를 사용해서
change메서드를 사용한후 str값을 출력하는것인데
change에 str을 참조했으니 change에도 0x100에 참조하는것 아닙니까
그런데 str+="456"이니깐 0x100주소값에 있는 ABC123에 456을 더한값인 ABC123456이 나와야하는 게 아닐까요??
해설을 봐도 이해가 안되서 질문드립니다 ㅠㅠ..