Как передаются объекты в java
Ответы
Иван Полежаев
12 апреля 2023
В Java
объекты передаются по ссылке, а не по значению. Это означает, что при передаче объекта в метод или при присваивании переменной ссылки на объект, фактически копируется только ссылка, а не сам объект.
Например, если у вас есть класс Person
:
public class Person {
private String name;
private int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public int getAge() {
return age;
}
}
И у вас есть метод, который принимает объект этого класса и изменяет его свойства:
public static void changePerson(Person person) {
person.setName("John");
person.setAge(30);
}
Вызов этого метода не создаст новый объект, а изменит свойства существующего объекта, так как объект передается по ссылке:
Person person = new Person("Jane", 25);
changePerson(person);
System.out.println(person.getName()); // => John
System.out.println(person.getAge()); // => 30
Таким образом, изменения, внесенные в объект внутри метода, будут отражаться на оригинальном объекте, на который ссылается переданная ссылка.
0
0