有人可以在Java中解释void返回类型吗?

时间:2013-09-09 00:05:13

标签: java return void

我见过的唯一的void返回类型在方法中有System.out.println语句。 因此,一旦调用该方法,将打印字符串 难道你不能返回类型字符串并返回字符串而不是做返回类型?

如果void返回类型方法中有其他方法可以使返回类型为方法提供的值,该值将返回该方法的结果吗?

什么时候你只能使用void返回类型?

5 个答案:

答案 0 :(得分:4)

  

有人可以在Java中解释void返回类型吗?

void类型用于声明方法不返回值。

  

难道你不能只返回类型String并将字符串设置为等于参数,以便在调用方法时显示它吗?

假设“你”(或者在这种情况下,PrintStream API的设计者)可以做到这一点,但这样做是没有意义的。我正在努力想到一个看似合理的用例,其中使用 println参数String ...如果它作为结果返回则是有意义的。

请记住,良好的API设计 1 的主要目标是:

  • 很好地支持常见用例,
  • 让程序员很容易理解。

返回值没有意义或很少(如果曾经)使用的值的方法是(IMO)设计不佳。

  

如果void返回类型方法中有其他方法可以使返回类型方法返回该方法的结果吗?

嗯,我想是的。但是你有与上面相同的问题。如果结果很少使用或难以理解(因此很难正确使用 ),那么可能错误的设计将其返回。

  

什么时候你只能使用void返回类型?

一种情况是您在interface或超类中实现或覆盖方法,并且该方法以void返回类型声明。

但是,孤立地,没有 只能使用void的情况。 (但是有很多案例,好的设计说最好使用void!)


1 - 还有其他目标。请不要脱离这种情况......

答案 1 :(得分:2)

void返回类型只表示不返回任何内容。 System.out.println不会返回任何内容,因为它只是打印出作为参数传递给它的字符串。

和..

  

难道你不能只返回类型String并将字符串设置为等于参数,以便在调用方法时显示它吗?

我不知道你想用这个说什么。

答案 2 :(得分:1)

简单地说,void什么都不返回,并且不希望返回任何内容。

你可以在这里阅读更多关于返回的内容:

http://docs.oracle.com/javase/tutorial/java/javaOO/returnvalue.html

答案 3 :(得分:1)

void返回类型用于表示该方法不返回任何内容。

关于方法是否应该返回void,其中一个参数(如果只有一个,我们可以这样做)或this(我们可能会这样做,如果我们想要的话)可能是争论的主题支持方法调用的链接。)

所以这个决定是课堂设计的一部分。

答案 4 :(得分:1)

当您的方法不return时,使用Void。

Print语句用于打印而不是返回。 如果要从方法返回String。删除void并将String关键字放在那里。并且作为方法的最后一行键入return语句。 return s; s是你的String变量。

如果你编写一个没有return语句的方法。你必须把这个方法写成void。虚假意味着你没有返回任何东西。返回任何东西都是关闭