关于Java编程语言中的return语句实例介绍

2016-02-19 20:59 11 1 收藏

今天图老师小编要跟大家分享关于Java编程语言中的return语句实例介绍,精心挑选的过程简单易学,喜欢的朋友一起来学习吧!

【 tulaoshi.com - 编程语言 】

众所周知,return 只能用在有返回类型的函数中,但是有返回值的函数一定要有return吗?return都可以用在函数的哪些地方呢?这是本文需要讨论的问题。

例一:

class test {

public String test() {

if(true){

return "";

}

else{

return "";

}

}

}

上面这样即可通过编译,但是下面这两个例子却不能通过编译:

(一)

class test {

public String test() {

if(true){

return "";

}

}

}

(二)

class test {

public String test() {

if(isTrue()){

return "";

}

else if(!isTrue()){//两个if里的判断包括了所有的可能性,但是还是编译期error

return "";

}

}

boolean isTrue(){

return true;

}

}

结论1:

对于(一),这是因为java编译器认定单独的if语句只在当一定条件满足情况下才执行,它认为if不会有任何情况下都能执行的能力。

对于(二),这是因为java编译器对if else 语句能够全面囊括所有情况的能力只限定在的if...else(或if...else if...else)时,而不包括if...else if。

再看例二:

class test {

public String test() {

while(true){

return "";

}

}

}

上面这样即可通过编译,但是下面这样不行:

class test {

public String test() {

while(isTrue()){

return "";

}

}

boolean isTrue(){

return true;

}

}

结论2:

这是因为编译器认为while语句有在任何情况下都能执行的能力,但是只在入参为true的情况下有该能力。

再看例三:

public class test {

String test() throws Exception{

throw new Exception();//抛出异常后,跳出程序,程序中止

}

}

结论3:

如果函数中创建了异常,并抛出,则该函数可以不返回值。

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)

来源:http://www.tulaoshi.com/n/20160219/1625004.html

延伸阅读
  Java 启动器 java 将初始化 Java 虚拟机。虚拟机随即按以下顺序搜索和加载类: 自举类 - 构成 Java 平台的类,包括 rt.jar 和 i18n.jar 中的类。 扩展类 - 使用 Java 扩展机制的类。它们被捆绑为 .jar 文件,位于扩展目录中。 用户类 - 开发人员和第三方定义的类,不使用扩展机制。在命令行上使用 -classpath 选项(常用方法)或使用...
  JSP编译器指引与指令元件有五种型态.在JSP 1.0之后,大部分的JSP是包含在以% 作为开始%作为结束的单一标签里.新的 JSP 1.1规格已经发表了,它同时也与XML相容. 五种JSP的编译器指引如下所示: 1 编译器指引 %@ 编译器指引 % 2 预定义 %! 预定义 % 3 运算式 %= 运算式 % 4 程序代码 % 程序代码 % 5 注解 %-- 注解 --% 下面我们分析一...
Java的一个重要优点就是通过垃圾收集器(Garbage Collection,GC)自动管理内存的回收,程序员不需要通过调用函数来释放内存。因此,很多程序员认为Java不存在内存泄漏问题,或者认为即使有内存泄漏也不是程序的责任,而是GC或JVM的问题。其实,这种想法是不正确的,因为Java也存在内存泄露,但它的表现与C++不同。 随着越来越多的服务...
标签: Web开发
链表是一种重要的数据结构,在程序设计中占有很重要的地位。C语言和C++语言中是用指针来实现链表结构的,由于Java语言不提供指针,所以有人认为在Java语言中不能实现链表,其实不然,Java语言比C和C++更容易实现链表结构。Java语言中的对象引用实际上是一个指针(本文中的指针均为概念上的意义,而非语言提供的数据类型),所以我们可...
所有类型的 Java 应用程序一般都需要计划重复执行的任务。企业应用程序需要计划每日的日志或者晚间批处理过程。一个 J2SE 或者 J2ME 日历应用程序需要根据用户的约定计划闹铃时间。不过,标准的调度类 Timer 和 TimerTask 没有足够的灵活性,无法支持通常需要的计划任务类型。在本文中,Java...

经验教程

895

收藏

52
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部