我对java初始化很好奇:
什么时候需要像这样初始化对象:
String init = new String("");
哪些对象(如字符串)不必像上面那样初始化?
String init = "";
最佳答案
根据您对问题的评论:
Then my question is which objects need the "new Object()" initialization?
你问的是构造,而不是初始化。
所有对象都需要有人来构建。字符串文字创建的字符串由 JVM 构造。您基本上不想使用 new String("text content here")
。
还有几个由 JVM 构造的其他对象,例如您加载的每个类的 Class
对象。但除了 String
之外,对于您想要与之交互的对象,您通常要么必须显式构造它们(通过 new
),要么从构造它们的方法中接收它们。 String
有点特殊,因为它是 Java 中唯一具有文字符号的对象类型(我认为)。 (所有其他文字,如 42
或 false
,都是原语。)
关于Java 对象初始化 - 什么时候需要?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15701565/