`
sjk2013
  • 浏览: 2186583 次
文章分类
社区版块
存档分类
最新评论

值传递引用误区

 
阅读更多
public class Something {

    public static void main(String[] args) {
        Other o = new Other();
        o.i = 100;
        o.addOne(o);
        System.out.println(o.i);
    }

}

class Other {

    int i;

    public void addOne(final Other o) {
        o.i++;
    }
}

以上执行结果为101。

第一点:不要怀疑,上面的final Other中的i是可以修改的。

第二点:o.addOne(o);中传递的确实是o.i为100的值o.i++之后变成了101。


分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics