java中String类为什么要设计成不可变的
1个回答
展开全部
你需要理解String中有一个pool(池),还有String a="name";其实是这样的:String a=new String(“name”);上网查查详细资料就能来理解了。
String:
是对象不是原始类型.
为不可变对象,一旦被创建,就不能修改它的值.
对于已经存在的String对象的修改都是重新创建一个新的对象,然后把新的值保存进去.
String 是final类,即不能被继承.
你应该是想要知道的是String、StringBuffer、StringBuilder之间的区别
String:
是对象不是原始类型.
为不可变对象,一旦被创建,就不能修改它的值.
对于已经存在的String对象的修改都是重新创建一个新的对象,然后把新的值保存进去.
String 是final类,即不能被继承.
你应该是想要知道的是String、StringBuffer、StringBuilder之间的区别
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询