为什么我仍然可以更改这个最终变量? [复制]

2023-12-30

If name被宣布final,为什么我还能打电话name.append输出是:shreya?我认为最终变量一旦赋值就不能更改?

public class Test1 {

    final static StringBuilder name = new StringBuilder("sh");
    public static void main(String[] args) {

        name.append("reya");
        System.out.println(name);
    }

}

final指的是无法更改参考,例如你不能说name = new StringBuilder()。确实如此not使引用的对象不可变。

不变性是一个属性class。可变类型的对象始终是可变的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么我仍然可以更改这个最终变量? [复制] 的相关文章

随机推荐