String str;System.out.println(str);与String str = new String();System.out.println(str);区别

来源:互联网 发布:阿里云备案照片大小 编辑:程序博客网 时间:2024/06/05 20:52

String str;System.out.println(str);与String str = new String();System.out.println(str);区别?

对于String str要明白编译时时在栈中创建,而堆中没有变量值,java编译要求变量都要进行初始化,不然编译会出问题,所以会报错;

而对于String str = new String();创建了对象,系统会自动初始化,就像你没有定义类的构造函数,系统也会自动调用无参构造器,因此输出时没有值。

0 0
原创粉丝点击