String和StringBuffer用final修饰

  1. String和StringBuffer都用final修饰,底层都是通过字符数组实现。
  2. String底层的字符数组被final修饰,所以值不能更改;StringBuffer底层的字符数组没被final修饰,所以值能更改。
  3. 如果final修饰的是基本数据类型,值不能变;如果是引用类型,地址不能变,值可以变。
  4. final修饰类(比如String和StringBuffer),只是限定类不可被继承,而非限定了其对象是否可变