Java面向对象编程 -9

String类简介
字符串严格意义上来讲并不能算是一个基本数据类型,也就是说没有任何一门语言会提供字符串这种类型的,而Java语言为了方便开发者进行项目的编写,所以利用其JVM的支持制造了一种可以简单使用的String类。并且可以像基本数据类型一样进行直接的赋值处理
需要注意的是,String这个类里面之所以可以保存字符串主要的原因是其中定义了一个数组,也就是在String里面所有的字符串中的每一个字符的数据都是保存在了数组之中。
观察String类的源码实现

  • 源代码目录 C:Program FilesJavajdk-10libsrc.zip(jdk10)

    jdk1.9及以后的String支持类

jdk1.9之后的实际上针对字符串的定义形式是增多了,要比jdk1.8多,类的数量上对比。
观察String.java可以发现
jdk1.8以前String保存的是字符数组 private final char[] value;
jdk1.9以后String保存的是字节数组 private final byte[] value;

原来所谓的字符串就是对数组的一种特殊包装应用,但是同时也应该清楚,既然包装的是数组,所以字符串里面的内容肯定是无法改变的,这一点随后会进行解释。

String本身包装的是一个数组,并且其有两种对象的实例化形式,直接赋值,构造方法实例化。

原文地址:https://www.cnblogs.com/sakura579/p/12500769.html