從Java對象的新手我的角度來看,如果兩個變量引用一個對象,更新一個變量應該做同樣的給對方,作爲代碼顯示如下:兩個Java變量引用相同的字符串對象不同步
SomeObject s1 = new SomeObject("first");
SomeObject s2 = s1;
s2.setText("second");
System.out.println(s1.getText()); // print second
System.out.println(s2.getText()); // print second as well
我引用了這個thread的代碼。
但是,這不適用於String類。見下面的代碼:
String s_1 = new String("first");
String s_2 = s_1;
s_2 = "second";
System.out.println("s_1: " + s_1 + " s_2: " + s_2);
//s_1 appears to be "first" and s_2 "second"
這是因爲字符串類和自我聲明的類之間的區別?感謝您的幫助!