【简答题】Strings="hello";s=s+"world";那么这两行代码执行后,str1对象原本是否发生改变?
发布于 2021-05-27 14:37:39
参考答案:
因为String被设计成不可变(immutable)类,所以他的所有对象都是不可变对象。这段代码中,s原先指向了一个String对象,内容是"Hello",然后我们对s进行了+操作,那么s所指向的那个对象是否发生改变呢?答案是没有。这是,s不指向远啦那个对象了,而指向另一个String对象,内容为"Hello World",原来那个对象还存在内存之中,只是s这个引用变量 不再指向它
参考解析:
暂无