如果它可以启动
String s = "Hello";
那为什么它是一个类?参数在哪里?
String s = "Hello";
只是语法糖。它实际上是作为引用类型实现的。(它是一个不可变的引用类型,所以你不能改变它)
鉴于这String是一个如此有用且经常使用的类,它有一种特殊的语法(通过字符串文字表示:内部的文本"")来创建它的实例,但在语义上这两者是等价的:
String s = "Hello"; // just syntactic sugar
String s = new String("Hello");
在幕后,这两种形式并不是100% 等效的,因为 using 的语法""试图重用 Java 字符串池中的字符串,而显式实例化new String("")总是会创建一个新对象。
但请不要误会,任何一种语法都会产生对对象实例的引用,字符串在 Java 中不被视为原始类型,并且是类的实例,就像其他任何语法一样。
String s = "Hello";
JVM 将其视为:
String s = new String("Hello");并将其实习到String池中作为String文字。
您在示例中的行是创建一个 String 对象。没有您正在考虑的传统意义上的任何参数。