core java上说方法中的参数,如果是基本类型,则处理的是这个基本类型的拷贝,如果是对象的引用,则处理的是引用的拷贝,不能达到真正修改基本类型参数或者是对象的引用也就是和C中的形参实参差不多,不过C++中还有引用参数可以达到改变参数本身的效果,那JAVA中有什么办法可以达到引用参数的效果呢,书上没说啊

解决方案 »

  1.   


    但是对于常规的变量,如int型,确实可以用int &来操作那个参数改变参数的值
    也就是说这里应该相当于JAVA中的"对基本类型的引用"吧,不过JAVA中似乎只有对对象的引用
    那么在这方面不是缺少了一些功能吗
      

  2.   

    感觉C++ 的引用很大程度上是为了效率,传递参数可以避免对象的复制,同时比写指针方便。
    java的引用主要还是安全的问题,避免了指针带来了很多问题,同时对象只能在堆上创建,不像C++那样可以在栈上创建对象。所以它们处理的问题背景不同。
      

  3.   

    void fun(int a)
    如果想要在方法中直接操作就达到对传进去的参数进行改变的话
    JAVA中的通常做法是什么呢
      

  4.   

    使用数组,或者把这个变量封装为一个类的field