为什么Java方法需要返回类型

时间:2012-10-16 11:02:20

标签: java oop methods return-type

道歉,如果这是一个非常荒谬的问题,但我最近一直在努力学习Java,并且发现难以接受返回类型的概念 - 我似乎无法找到任何正义。然而,这里有一些关于它们如何偏离原始int返回类型的内容,从而扩展了方法/函数可以返回的内容。但是,我仍然不太明白为什么:这有什么功能性的原因吗?即如果某些代码行定义了某些东西的返回,为什么解释器只是简单地返回一些内容。

4 个答案:

答案 0 :(得分:6)

我猜你的隐含问题是“为什么Java没有类型推断”,因为Java显然是一种静态类型的语言,因此返回类型必须在编译时明确知道。

对于答案,您可以调查Scala的类型推断:它真的,非常复杂和混乱,最终结果仍然是片状的。 Java采用了简单的方法:无类型推断。这也符合Java所述的设计目标,即“蓝领语言”:低技能开发人员的显式打字更明显,更容易。

为了记录,我注意到你提到了“Java解释器”,它表明你将Java误认为是一种动态的解释语言。 Java是一种编译语言。

答案 1 :(得分:5)

首先,Java是静态类型的,因此在不知道返回类型的情况下,您无法将函数的响应分配给变量。

它还在一定程度上自我记录功能。

对于很多功能,也可以返回null

答案 2 :(得分:3)

是一种设计选择,可以在编译时捕获更多错误,而不是运行时。

答案 3 :(得分:2)

返回类型有助于强制执行type safety