次の場合の String オブジェクトの動作の正確な理由を知りたいです。
次のスニペットとその仕組みについて知りたいと思っています。
スニペット
String s1 = "I belong to String pool";
String s2 = new String("I'm present on Heap space");
質問:
- これらの文字列テキスト、つまりメモリに格納されている文字配列はどこにあるのでしょうか? 「私は String プールに属しています」文字配列は String プール内に存在し、「I'm present on Heap space」文字配列は実際にヒープ領域に存在しますか?
要するに、文字列リテラル参照、文字列リテラルテキスト、文字列オブジェクト参照s2、文字列オブジェクトテキストなどの格納場所を説明してください。
次の投稿のような図式表現は非常に便利です。 http://theopentutorials.com/tutorials/Java/strings/string-literal-pool/