现在的位置: 首页 > 综合 > 正文

值传递引用误区

2018年05月16日 ⁄ 综合 ⁄ 共 263字 ⁄ 字号 评论关闭
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。

抱歉!评论已关闭.