String类为什么是不可变的对象?

 在Java中, String类是不可变的。那么到底什么是不可变的对象呢? 可以这样认为:如果一个对象,在它创建完成之后,不能再改变它的状态,那么这个对象就是不可变的。不能改变状态的意思是,不能改变对象内的成员变量,包括 基本数据类型的值不能改变,引用类型的变量不能指向其他的对象,引用类型指向的对象的状态也不能改变。
mmexport1524485137226.jpg



--来自移动客户端
已邀请:

zwh2018

赞同来自: admin

java的设计者,最初设计关于字符串的时候,其实是考虑到大多数的实际情况的,他们认为“共享”字符的情况远多于改变字符的情况,所以设置了string类的不可变性。当然,也有一些特别针对改变字符的方法。

--来自移动客户端

要回复问题请先登录注册

Template error, template file not found