String类有两种创建实例的方式:
1.直接赋值
String str = "hello";
2.构造函数
String str = new String("hello");
差异分析:
a.每一个字符串都是一个String类的匿名对象,所以采用直接赋值,也会在堆内存开辟一块空间保存字符串"hello"
b.若采用构造函数方式创建字符串,因为使用了关键字new,所以会另开一块堆内存空间,原本(匿名)开辟的堆内存空间将不会被任何栈内存指向,所以将成为垃圾,被GC回收
总结:
开发中均采用直接赋值的方式创建字符串