zoukankan      html  css  js  c++  java
  • Java

    会执行,在方法return动作之前,return语句执行之后,若finally中再有return语句,则此方法以finally的return作为最终返回,若finally中无return语句,则此方法以try的return作为最终返回。
    P:方法的返回值以最后一个执行return语句的运算结果为准,返回值一旦确定,不随之后执行的代码影响。
    测试程序:
    public static void main(String[] args) {    
      System.out.println(test());
      System.out.println("finish..");
     }
    private static int test() {
      int b = 20;
      try {
       System.out.println("try block");
       return b += 80;
      }
      finally {
       System.out.println("finally block");
       if (b > 20) {
        System.out.println("b = " + b);
       }
        // 若此行取消注释,参见输入2
        // return 1;
        // 若此行取消注释,参见输出3
        // b --; // 方法的返回值在finally之前已经定了(可以理解为每个方法都有一个用来保存return值的内存空间),在此再修改b并不会影响返回值。
      }
     }
    输出:
    try block
    finally block
    b = 100
    100
    finish..
    输出2:
    try block
    finally block
    b = 100
    1
    finish..
    输出3:
    try block
    finally block
    b = 100
    100
    finish..
  • 相关阅读:
    Linux下安装漏洞扫描工具Nessus
    【译】使用OpenVAS 9进行漏洞扫描
    MD5小彩虹表
    获取某个版本软件存在的漏洞信息
    【译】使用chage来管理Linux密码过期时间的七个例子
    [转]Centos 安装Sublime text 3
    Nessus扫描策略
    Nginx使用笔记
    SSH 公钥登录
    MySQL加密
  • 原文地址:https://www.cnblogs.com/andremao/p/7860502.html
Copyright © 2011-2022 走看看