Java - 一个没有返回语句的方法

91 阅读1分钟

在学习Java时,你可能会遇到一个测验,问当一个方法没有return 语句时会发生什么。

这个测验的内容如下。

如果一个方法没有return 语句,那么:

  • a. 它在编译时将产生一个语法错误
  • b. 它必须是一个void 方法
  • c. 它不能从定义该方法的类之外被调用
  • d. 它必须被定义为一个public 方法
  • e. 它必须是一个intdoublefloat 、或String 方法。

上述问题的答案是b

这是因为一个返回类型为void 的Java方法不会返回任何东西

例如,下面的hello() 方法会向控制台打印一条信息,但不返回任何东西:

void hello() {
System.out.println("Hello World!");
}

当你把返回类型改为有效的Java类型之一时,没有return 语句就会抛出一个错误:

int hello() {
System.out.println("Hello World!");
} // ERROR: Missing return statement

如果该方法是publicprotectedprivate 、或默认访问级别,这并不重要。

当你省略return 语句时,一个返回类型为void 的方法可以正常工作。

小测验的正确答案是b