java - 为什么不能使用 Void 作为 main 方法的返回类型

标签 java void main-method

所以我想测试 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/

相关文章:

java - 在 `public static void main` 方法中放置最终字符串`语句时出现错误 : illegal start expression.

java - 是否有办法关闭 Java EE 1.4 JSP 中的注释?

Java:条件语句和关系运算符

c++ - 错误 : expected unqualified-id (C++)

c# - 更改静态无效C#中的标签文本

java - 主方法在类错误中不是静态的

java - 来自数据库的 Spring Boot Security REST 基本身份验证

java - 如何处理java中方法签名的变化

c - C语言中如何调用void函数

iphone - 正确使用 UIApplicationMain