关于Java语言中的return语句的讨论
众所周知,return 只能用在有返回类型的函数中,但是有返回值的函数一定要有return吗?return都可以用在函数的哪些地方呢?这是需要讨论的问题。
例一
class test {
if(true){
}
return "";
}
上面这样即可通过编译,但是下面这两个例子却不能通过编译
(一)
public String test() {
return "";
}
(二)
public String test() {
return "";
else if(!isTrue()){//两个if里的判断包括了所有的可能性,但是还是编译期error
}
boolean isTrue(){
}
结论1:
对于(二),这是因为java编译器对if else 语句能够全面囊括所有情况的能力只限定在的if...else(或if...else if...else)时,而不包括if...else if。
再看例二
class test {
while(true){
}
}
class test {
while(isTrue()){
}
boolean isTrue(){
}
结论2:
再看例三
public class test {
throw new Exception();//抛出异常后,跳出程序,程序中止
}
如果函数中创建了异常,并抛出,则该函数可以不返回值。
编辑推荐:
温馨提示:因考试政策、内容不断变化与调整,长理培训网站提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准! (责任编辑:长理培训)
点击加载更多评论>>