对于空串来说这是一个对象他被""这个对象给实例化了只是他的长度为0字符的内容为空。
而String变量中还可以存储一个特殊的值,这个是null,这个表示没有和其他的对象与这个变量相关联。也差不多相当于一个没有被实例化的对象,只是定义了一个对象而已。
代码测试
package study; public class myString { public static void main(String[] args) { String str1=null; String str2=""; System.out.println("str1"+str1); System.out.println("Str1"+str1.length()); /* * str1null Exception in thread "main" java.lang.NullPointerException at study.myString.main(myString.java:8) b报错由于没有对象实例化空指针异常 * */ System.out.println("str2"+str2); System.out.println("Str2"+str2.length()); } }
看到会报空指针异常由于没有进行实例化。