在java中String类为什么要设计成final?
1.什么是不可变?
在java中String类为什么要设计成final?
2.string为什么不可变?
private final char value[];
首先String类是用final关键字修饰,这说明string不可被继承。再看下面,stirng类的主力成员字段value是个char[]数组,而且是用final修饰的,final修饰的字段创建以后不可以改变。
虽然value不可变,也只是value这个引用地址不可变。挡不住array数组是可变的事实,array的数据结构看下图。
也就是说a
原创
2020-07-09 22:01:21 ·
458 阅读 ·
3 评论