В Java передаются только ссылки и передаются по значению:
Все аргументы Java передаются по значению (ссылка копируется при использовании метода):
В случай примитивных типов, поведение Java просто: значение копируется в другом экземпляре примитивного типа.
В случае объектов это одно и то же: переменные объекта являются указателями (ведрами), содержащими только адрес объекта который был создан с использованием «нового» ключевого слова и скопирован как примитивные типы.
Поведение может отличаться от примитивных типов: поскольку скопированная объектная переменная содержит один и тот же адрес (для одного и того же объекта) контент / члены могут по-прежнему модифицироваться в рамках метода и позже получать доступ снаружи, создавая иллюзию того, что сам объект (содержащий) был передан по ссылке.
Объекты «String» являются идеальным контр-примером для городской легенды, говорящей, что «Объекты передаются по ссылке»:
По сути, в рамках метода вы никогда не будете , чтобы обновить значение строки, переданной как аргумент:
Объект String, содержит символы массивом, объявленным окончательным, который не может быть изменен. Только адрес объекта может быть заменен другим, используя «новый». Использование «нового» для обновления переменной не позволит объекту получить доступ извне, поскольку переменная была первоначально передана по значению и скопирована.
Щелкните правой кнопкой мыши по проекту:> Настроить> Преобразовать в проект Maven
И затем вы можете обновить конфигурацию проекта
попробуйте «Команда» - «Зафиксировать» в Eclipse, а затем в оболочке:
mvn dependecy:resolve
"> Настроить> Преобразовать в проект Maven" отсутствует
org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER
превратилась в хороший & amp; полныйMaven Dependencies
. Мне даже не пришлось пройти черезMaven > Update Project...
, чтобы выполнить это. Спасибо огромное! – Withheld 5 December 2012 в 17:54