String字符串类型的数据结构
被final修饰的类不能被继承,修饰的方法不能被重写,修饰的基本类型变量不能被修改,修饰的引用数据类型变量不能初始化后不能在指向其他对象。
String是由final关键字修饰的类不能被继承,避免了破环String类的不可变,它的成员变量value也是用final关键字修饰的,保证了value的引用地址不可变,但里面的具体元素可以被改变
每次修改都会产生一个新的字符串
String类的保存字符串的数组被final修饰且私有,保证了String类没有提供修改这个字符串的方法,当String类型的值被修改时,都是在方法内部重新新建的String类型对象,并且返回这个新的对象,原来的对象是不会被改变的
public class demo05 {
public static void main(String[] args) {
String s="zttsd";
s.substring(0,3);
System.out.println("原有字符串s:"+s);
String s1=s.substring(0,3);
System.out.println("改变后的s1:"+s1);
}
}
当字符串被截取时,原有的s没有被改变,而是创建了一个新的变量s1来接收这个改变了的字符串