闂佽 鍋撻柟顖滃椤ワ拷 (0) +1 闁荤姍宥嗗 (0) +1 闂傚⿴浜烽幏锟� (0) +1
闂佽 鍋撻柟顖滃椤ユ垿鏌熺€涙ê濮囧┑顕嗘嫹闂佸搫琚崕鍐诧耿閸涙潙缁╅柟顖滃椤ワ拷>>

正在阅读:java中传值及引伸深度克隆的思考java中传值及引伸深度克隆的思考

2004-06-28 10:06 出处:CSDN 作者:xiaoyusong 责任编辑:linjixiong

    如:


public class Example{
  int i=0;
}
public class A{
  public int i=0;
  public Example add0(Example e)
  {
     e.i++;
     return e;
   }
  
   public void add1(Example e)
   {
      e.i++;
   }

   public void modify0(Example e)
   {
      Example b=e;//将e行参对象的地址赋给句柄b
      b.i++;//也同时修改了e.i和实参的值
   }
  
   public void modify1(Example e)
   {
     e=new Example();
     e.i++;
   }
   public static void main(String[] args)
  {
     Example ex=new Example();
     A a=new A();
     a=a.add0(ex);//等价于a.add0(ex),无需返回值,因为通过传递的对象地址(句柄),直接修改了ex中i的值
     a.add1(ex);//add0,add1都在其中的方法体中直接修改了ex.i的值,因此add0的返回值有点多余
     a.modify0(ex);//对ex所产生的影响同add1
     a.modify1(ex);//对ex没有产生任何影响(而且这就是等价于什么也没有做).


键盘也能翻页,试试“← →”键

相关文章

关注我们

最新资讯离线随时看 聊天吐槽赢奖品
闂佸綊娼ч鍡椻攦閳ь剟鎮规担鍛婂仴婵☆偓鎷�闂佹悶鍎抽崑娑㈠春鐏炰勘浜滈柛顐f礀閸旓拷