Sobes.tech
Junior — Middle
99

Kako se vrši prenos podataka u parametrima metoda i koje su osobine ovog procesa?

Одговор од АИ

sobes.tech АИ

В Java данные передаются в параметры методов по значению. Это означает, что при вызове метода копируется значение аргумента и передается в параметр.

Особенности:

  • Для примитивных типов (int, double и т.д.) копируется само значение.
  • Для ссылочных типов копируется значение ссылки, то есть адрес объекта в памяти, а не сам объект.

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

Пример:

void modify(int x, List<String> list) {
    x = 10; // изменение локальной копии
    list.add("new item"); // изменение объекта по ссылке
}

int a = 5;
List<String> myList = new ArrayList<>();
modify(a, myList);
// a останется 5, а myList будет содержать "new item"