文字列プールで私の概念が明確かどうかは疑問です。Java文字列プールオブジェクトの作成
String s1 = "abc";
String s2 = "def";
s2 = s2 + "xyz";
3)
1)
String s1 = "abc";
String s2 = "def";
s2 + "xyz";
2 - :次のコードのセットを研究し、私の答えは次の文のセットの後に作成されたオブジェクトの数に正しいかどうかを確認してください)
String s1 = "abc";
String s2 = "def";
String s3 = s2 + "xyz";
4)
String s1 = "abc";
String s2 = "def";
s2 + "xyz";
String s3 = "defxyz";
私が概念的に知っているところでは、上記の4つのケースすべてで、各行の実行後に4つのオブジェクトが作成されます。
なぜ、たとえば3番に4つのオブジェクトがあるのか、理由を教えてください。 – djna
最初の3つにはそれぞれ3つの文字列オブジェクトしかありません。 –
@djna:True。コンパイラは、コンパイル時にs2 + "xyz"を評価できるので、3つのオブジェクトだけを自由に使用できます。 – Thilo