教妹学Java:学弟学妹が身につけなければならない文字列定数プール


文字列定数プール
「三妹さん、今日は文字列定数プールを勉強しましょう.これは文字列の非常に重要な知識点です.」青岛路小学校の方から高らかな歌声が闻こえてきて、「歌~山~歌~」と耳に入った.
三妹は「よし、始めよう、兄さん」と言った.
「この面接問題から始めましょう.」
String s = new String("  ");

「この行のコードはいくつのオブジェクトを作成しましたか?」
「ひとつじゃないか」三妹は思わず答えた.
「いや、二つ!私は三妹の答えを直接否定しました.「newキーワードを使用して文字列オブジェクトを作成する場合、Java仮想機会は文字列定数プールで「二番目の兄」という文字列オブジェクトがあるかどうかを検索し、ある場合は文字列定数プールに「二番目の兄」というオブジェクトを作成せず、直接スタックに「二番目の兄」の文字列オブジェクトを作成し、スタック内のこの「二番目の兄」のオブジェクトアドレスを付与に返します.変数sに値を与えます.」
「ない場合は、文字列定数プールに「二番目の兄」の文字列オブジェクトを作成してから、スタックに「二番目の兄」の文字列オブジェクトを作成し、スタック内のこの「二番目の兄」の文字列オブジェクトアドレスを変数sに返す