String s 表示申明了一个引用变量,但是该变量并没有初始化,所以对该变量的所有操作,除了初始化赋值意外,都会引发异常。 String s=null 表示申明了一个引用变量,并且进行了初始化,但是该引用并没有指向任何对象,但是可以把它作为一个参数进行传递,或者进行其他引用,但是不能调用它作为对象的方法。 String s="" 表示申请了内存资源,但资源空间值为空。该语句表示声明并引用到一个对象,只不过这个对象为0个字节。所以既然有了对象,就可以调用对象的方法。 String s = String.Empty 与 String s=""; 是完全相同的 “” 也是字符串