谁能解释一下Java中的void返回类型?

问题描述 投票:1回答:5

我见过的唯一的void返回类型是在方法里有System.out.println语句,所以一旦方法被调用,那些Strings就会被打印出来。你就不能把返回类型做成字符串,让字符串返回,而不是做void返回类型吗?

如果void返回型方法中还有其他方法,能不能把返回型做成方法给出的值,从而返回该方法的结果?

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

java return void
5个回答
5
投票

谁能解释一下Java中的void返回类型?

void 类型用来声明一个方法不返回值。

难道不能直接将返回类型定为String,并将字符串设置为等于参数,使其在方法被调用时显示出来吗?

假设 "你"(或者在本例中,设计者的 PrintStream API)可以做到这一点,但这样做是没有意义的。 我正在努力思考一个合理的用例,在这个用例中使用 使用println 参数String......如果它是作为结果返回的。

请记住,一个好的API设计的主要目标包括1:

  • 妥善支持常见的用例,以及
  • 容易被程序员理解。

那些返回的值要么没有意义,要么很少(如果有的话)使用的方法是(我认为)糟糕的设计。

如果void返回型方法中还有其他方法,你能不能让返回型方法能返回该方法的结果?

嗯,我想是的。 但是你有和上面一样的问题。 如果结果要么很少使用,要么很难理解(因此很难使用 正确)那么它可能是 坏设计 来返回它。

什么情况下只能使用void返回类型?

一种情况是,你在一个 interface 或一个超类,并且该方法的声明中带有一个 void 返回类型。

但单独来看,没有任何情况下,你的 可以 只用 void. (但也有 大量案例 在好的设计中,最好是使用 void!)


1-还有其他目标。 请不要断章取义......。


2
投票

void返回类型意味着什么也不返回,系统.out.println不会返回任何东西,因为它只是打印出作为参数传递给它的字符串。 System.out.println不会返回任何东西,因为它只是打印出作为参数传递给它的字符串。

还有...

你就不能把返回类型设为String,然后把字符串设置为等于参数,让它在方法被调用时显示出来吗?

我不知道你想说什么。


1
投票

简单地说,void什么也不返回,也不期望有什么返回。

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

http:/docs.oracle.comjavasetutorialjavajavaOOreturnvalue.html。


1
投票

void return类型是用来表示该方法不返回任何东西。

这可能是一个争论的主题,方法是否应该返回 void,其中一个论点(如果只有一个论点,我们可能会这样做),或者是 this (如果我们想支持方法调用链,我们可能会这么做)。

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


1
投票

当你的方法不具备以下条件时,可以使用Void 返回 任何东西。

Print语句是用来打印的,而不是用来返回的。如果你想从你的方法中返回一个字符串,去掉void并在那里加上String关键字。然后在方法的最后一行输入返回语句。return s; s是你的String变量。

如果你写了一个没有return语句的方法,你必须把这个方法写为 void ...void意味着你没有返回任何东西,返回任何东西都是封闭的。

© www.soinside.com 2019 - 2024. All rights reserved.