Действительно ли Java передает объекты по значению? [дубликат]

Возможный дубликат: Передается ли Java по ссылке?

public class myClass{
    public static void main(String[] args){
        myObject obj = new myObject("myName");
        changeName(obj);
        System.out.print(obj.getName()); // This prints "anotherName"
    }
    public static void changeName(myObject obj){
        obj.setName("anotherName");
    }
}

Я знаю, что Java передается по значению, но почему он передает obj по ссылке в предыдущем примере и меняет его?

27
задан Community 23 May 2017 в 12:34
поделиться