java中为啥try中的return语句不行,而必须写在函数的末尾即catch后?

我写了一个函数,返回类型为Car,其中有一个try-catch块,我将return写在try的最后一句,然后编译器就报错,说该函数没有返回语句。我试了下只有把return写在函数的最后一句,或在最后一句在加上一句return语句,编译器才通过?请问这是咋回事呢?问题出在哪?怎么解决?

这个是try ,catch的问题,因为你写在try块中的东西是有可能会抛出异常的东西,如果出现异常,会跳过后面的语句,其中包括return语句,这样就没有返回值了,所以必须在catch后面再不上return。不过如果你在catch里面也写上return,最后一行不写return也是对的。

主要是保证一定要让函数有返回值,不然会报错。
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-10-19
你只在try中写了return 要是发生了异常进了catch 那不就没了return 你的方法声明了返回 你的程序里就必须有对应的return本回答被提问者采纳
相似回答