Java参数传递和引用

时间:2013-09-30 04:21:52

标签: java reference

我实际上看不到 Java如何管理对象的引用传递。我揭露这种情况是为了表达我的怀疑。

public class Clase {


    public void metodo (int i, Integer objeto) {

        i++;
        objeto++;
    }
}

public class Main {

    public static void main(String[] args) {

        int         i = 5;
        Integer     object = new Integer(8);

        System.out.println(i);
        System.out.println(object);

        new Clase().metodo(i, object);

        System.out.println(i);
        System.out.println(object);


    }

}

我打印的所有内容都是:

  

5
  的 8
  的 5
   8

所以,只要我在方法中接收一个原语和一个对象,该对象是否也不应该从该方法中改变?

1 个答案:

答案 0 :(得分:3)

您使用的示例对象(Integer)是不可变对象(与String相同)。尝试使用非不可变对象的相同示例,您将得到预期的答案。