Где новый объект строки, созданный, когда мы заключаем, используя + операторJAVA

Программисты JAVA общаются здесь
Anonymous
Где новый объект строки, созданный, когда мы заключаем, используя + оператор

Сообщение Anonymous »

Я знаю, что это может быть довольно простым и, вероятно, довольно простым, но я не могу четко понять, что произойдет в этой ситуации, так что здесь идет.

Код: Выделить всё

String str1 = "Hello";
String str2 = "World";
String str3 = new String("HelloWorld");
String str4 = str1 + str2;
Я знаю, что Str1 и Str2 создадут объект «Привет» и «Мир» соответственно внутри Постоянный Pool String . В то время как для STR3 создается новый объект Outside Constant Pourse , который указывает на «Helloworld», который создается внутри String Constant Pool .

Мой вопрос, что произойдет, если я согласен 2 или более струнный ( conct 'или concat' или concat 'или concat ( (). method)?

Will a new object be created outside the pool just like in the case of String str3 or will str4 point directly at the object "HelloWorld" inside the String Constant Pool


PS : And , если это так же, как создание нового объекта снаружи пула, то как это происходит без использования ключевого слова ?


Подробнее здесь: https://stackoverflow.com/questions/506 ... g-operator

Вернуться в «JAVA»