所以我想测试 Void
类型然后我写了这个简单的程序:
package ehsan;
public class NumTest {
public static Void main(String[] args) {
System.out.println("Hello, World!");
return null; /* The compiler forced me to do so. I just can't realize what is the point in returning in Void type!? */
}
}
所以现在当我想编译时,编译器会报错:
main method must return a value of type void
为什么编译器看不到我没有返回任何内容并且正在使用 Void
?
最佳答案
你应该使用 void
(小写 v
)不是 Void
目的。 Void
对象不会像例如int
/Integer
, 请参阅 Java Language Specification获取自动装箱对象的列表。
Void
不是 void
的包装器,它只是一个名称非常相似的对象,因此可以在需要指定返回类型的地方使用(例如 Callable<T>
),它仅用于文档目的和解决某些通用类返回类型的问题。
第二个用例是反射(当你想检查 void
函数的返回值时,你会得到 Void.TYPE
)。
正确的行是:
public static void main(String[] args)
关于java - 为什么不能使用 Void 作为 main 方法的返回类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38239543/