`
javazeke
  • 浏览: 86981 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

由return引出的思考

阅读更多

public class  Test

{

       public static void  main(String args[])

       {

              int  b  =  t.get();

              System.out.println(b);

       }

      

       public static int  get()

       {

              try

              {

                     return 1 ;

              }

              finally

              {

                     return 2 ;

              }

       }

}

 

返回的结果是2

try中的return语句调用的函数先于finally中调用的函数执行,也就是说return语句先执行,finally语句后执行,所以,返回的结果是2Return并不是让函数马上返回,而是return语句执行后,将把返回结果放置进函数栈中,此时函数并不是马上返回,它要执行finally语句后才真正开始返回。

原理应该是,return 1先压栈,但程序比没有停止,继续finally块,而finally块中又压栈一次,所以最后弹出的是2。

分享到:
评论

相关推荐

    javascript中return,return true,return false三者的用法及区别

     语法为:return 表达式;  语句结果函数的执行,返回调用函数,而且把表达式的值作为函数结果返回出去 ②返回控制无函数结果  语法为:return;  在大多数情况下,为事件处理函数如果让其返回false,可以防止默认的事件...

    51单片机return怎么用?单片机return的用法

    ### 51单片机Return用法详解 #### 引言 在51单片机编程过程中,`return`关键字的正确使用对于确保程序逻辑的准确性和效率至关重要。本文将详细探讨51单片机中`return`的两种常见用法,并通过具体的代码示例来分析这...

    return 0的总结

    关于 return 0 的总结 return 0 是 C++ 语言中一个重要的概念,对初学者或不是很理解的人来说,本文将对 return 0 进行详细的解释和总结。 首先,return 语句的作用是将一个值返回给调用它的函数。例如,在一个...

    C# return 返回的几种用法

    C# return 返回的几种用法 return View(); 返回和控制器同名视图 return Content("我是一段文本", "text/html"); return Redirect("http://www.baidu.com/"); 返回URL重定向 还有好多种用法哦,下载了看吧。

    Return-v2.1_Return2.1_handlehxh_return_WordPress_源码

    这是一套自用的主题,我对于wordpress的关注已经有很长时间了,一直以来...开发了这套针对设计师与开发者的轻量简洁风格的wordpress主题【return】,在这免费分享给我的设计师与开发者朋友们,同时也为开源社区做点贡献

    loadrunner retrun 0与return -1

    LoadRunner 中 return 0 和 return -1 的作用 LoadRunner 是一款性能测试工具,它可以模拟大量用户对服务器的访问,来测试服务器的性能和可靠性。在 LoadRunner 中,return 0 和 return -1 是两个非常重要的返回值...

    sql中return的用法,在C#中调用带有return值的存储过程

    本文将深入探讨`return`关键字在SQL中的使用以及如何在C#中调用这些存储过程,并获取其返回值。 首先,让我们了解SQL中的`return`语句。在SQL中,`return`主要用于T-SQL批处理或存储过程,它用于提前结束批处理或...

    delphi exit类似C return

    对于标题中提到的 "Delphi exit 类似 C return",我们可以深入探讨一下这两个语言中的相关概念。 在 Delphi 中,`exit` 是一个特殊的语句,它主要用于提前结束当前执行的代码块,例如过程(Procedure)或函数...

    C语言中的return

    例如,`1`通常代表一般错误,而其他值可能由特定的程序约定来表示特定类型的错误。 总的来说,`return`语句在C语言中是不可或缺的,它使得函数能够返回值给调用者,并且在`main`函数中,返回值还可以用来传达程序的...

    C语言exit和return函数的区别

    C语言exit和return函数的区别 C语言中,exit和return函数都是结束当前进程的方式,但是它们之间有很大的区别。 Exit函数: Exit函数是一种终止当前进程的方式,exit函数的原型为`void exit(int status);`,其中...

    Mssql 存储过程 返回值Return 与output 区别与应用.docx

    在编写存储过程时,我们有时需要向调用者传递结果或状态信息,这时就涉及到两种主要的方式:`RETURN`和`OUTPUT`参数。下面将详细介绍它们的区别和应用场景。 1. `RETURN`关键字: - `RETURN`主要用于返回一个整数...

    Java的throw和return

    ### Java的throw和return 在Java编程语言中,`throw`和`return`是两个非常重要的关键字,它们分别用于处理异常和返回方法的结果。本文将详细介绍这两个关键字的用法、特点以及它们与`finally`块之间的关系。 #### ...

    关于C语言中return的一些总结

    关于 C 语言中 return 的一些总结 在本文中,我们将对 C 语言中的 return 语句进行详细的讨论,包括 return 语句的定义、main 函数的定义、return 语句的作用等。 Return 语句是 C 语言中的一个预定义语句,提供...

    关于C语言的return用法 最详细的

    ### 关于C语言的return用法 最详细的 在C语言编程中,`return`语句是函数执行过程中一个非常重要的组成部分。它不仅控制着函数的返回值,还决定了程序流程的方向。本文将深入探讨C语言中`return`的用法,并提供详细...

    关于return的返回值.docx

    特别地,对于 `main` 函数,它的返回类型是 `int`,这是由语言标准规定的。在 `C` 和 `C++` 中,`main` 函数的返回值是程序执行结束后传递给操作系统的,操作系统通过这个返回值判断程序的运行状态。一般情况下,`...

    java 中finally语句块与return的执行关系

    Java 中 finally 语句块与 return 的执行关系 Java 中的 finally 语句块是用于保证无论出现什么情况,一定要执行的代码块。在 try-catch-finally 结构中,finally 语句块的执行顺序是非常重要的。下面我们来详细...

    Financial modeling-asset return

    financial modeling on asset return. MBA class content

    WebView获得return值demo

    本示例"WebView获得return值demo"将详细介绍如何自定义一个WebView,以获取JavaScript函数的返回值。 首先,我们要了解`WebView`的基本用法。`WebView`是Android SDK中的一个类,它继承自`View`。我们可以通过以下...

    尽早return的原则.rar

    在C#编程中,"尽早return"原则是一个重要的编程习惯,它强调在函数或方法的执行过程中,一旦确定了返回值或结果,应尽早返回,避免不必要的后续代码执行。这一原则有助于提高代码的清晰度、可读性和效率,减少潜在的...

Global site tag (gtag.js) - Google Analytics