其他分享
首页 > 其他分享> > String不可变性的实例

String不可变性的实例

作者:互联网

String对象一旦被创建就是固定不变的了,对String对象的任何改变都不影响到原对象,相关的任何change操作都会生成新的对象

public class TestString1 {
    String s = "abc";
    public void change(String s){
        System.out.println(s);//abc
        s = "def";
        System.out.println(s);//def
    }
    public static void main(String[] args) {
        TestString1 testString1 = new TestString1();
        testString1.change(testString1.s);
        System.out.println(testString1.s);//abc
    }
}

在这里,赋给形参的是堆内存的地址,而形参重新赋值是需要在堆内存中重新创建一个对象的,而这个对象只是形参重新指向的,并不会改变实参的指向,所以实参不会发生改变。从表现上来讲,String更像一个基础变量,形参改变,实参却不会改变。

标签:String,形参,System,testString1,实例,实参,可变性,out
来源: https://www.cnblogs.com/interstellar-xd/p/14401528.html