java值传递与引用传递

来源:计算机等级考试    发布时间:2012-08-29    计算机等级考试视频    评论

  java中没有了c++中 & 这样的引用符号,也没像c#中那样提供了out与ref 那么它是怎么做的呢
  做什么事情都要去除例外的东西,String类就是此类问题的一个特殊情况
  为什么特殊呢?
  因为它是一个引用类型,确执行的是值传递。这样说有些抽象,还是举个例子吧
  值传递:
  class Str
  {
  public static void main(String[] args)
  {
  int i = 900;
  System.out.println(i);
  changeInt(i);
  System.out.println(i);
  }
  public static void changeInt(int s)
  {
  s = 34234;
  }
  }
  结果:
  900
  900
  这就是所谓的值传递。i把自己的副本给了函数changeInt的形参,而在changeInt中虽然将s赋值34234.但是对原来的i值并没有影响,因为它所修改的只是i的copy品而已。
  引用传递:
  class Str
  {
  public static void main(String[] args)
  {
  Yinyong y = new Yinyong();
  System.out.println(y.age);
  changeObject(y);
  System.out.println(y.age);
  }

上一页12下一页

视频学习

我考网版权与免责声明

① 凡本网注明稿件来源为"原创"的所有文字、图片和音视频稿件,版权均属本网所有。任何媒体、网站或个人转载、链接转贴或以其他方式复制发表时必须注明"稿件来源:我考网",违者本网将依法追究责任;

② 本网部分稿件来源于网络,任何单位或个人认为我考网发布的内容可能涉嫌侵犯其合法权益,应该及时向我考网书面反馈,并提供身份证明、权属证明及详细侵权情况证明,我考网在收到上述法律文件后,将会尽快移除被控侵权内容。

最近更新

社区交流

考试问答