zoukankan      html  css  js  c++  java
  • try catch 与 return 和 finally 关系。

    例如,我打开了一个不存在的文件
    import java.io.*;
    public class Demo {
         public static void main(String[] args) {
               try
             {
                           FileReader fr=new FileReader("d:\aa.txt");
             }
             catch(Exception e)
             {
                 e.printStackTrace();
             }

             System.out.println("11");
         }
    }
    我自己试过,后面的11会打印出来,但我看视频时老师说异常后面的语句不会执行,所以想知道下具体的解答。

    答:

    1.try
              {
                          
              }
              catch(Exception e)
              {

              }

    你的 11已经超出 异常捕抓呀。 你有异常处理要终止程序应该在 catch 里。

    如果try块中的语句被后面的catch块捕获并处理了,那么try,,catch后面的语句就还会运行的,如果不被捕获,那后面的就不能运行

    问题2:finally在return前执行还是return后?、

    答: finally和return完全是独立执行了! 虽然finally先于return执行,不过finally无论如何都无法修改return的结果。

    这就是为什么,一个方法最好只做一件事,而且尽量不能有多个返回值。(坑很深,切勿一个方法多个return!)。

  • 相关阅读:
    Django第一天上课笔记
    easyui-datebox 只能获取当前日期以前的日期
    身份证号码 正则表达式 jquery
    动态修改属性设置 easyUI
    easyUi onLoadSuccess:、onChange这些事件不能嵌套使用!!!!
    jstl无法调用js
    decode
    easyui-panel 滚动条禁用
    js文件引用js文件
    硬编码
  • 原文地址:https://www.cnblogs.com/mr-gao/p/3933427.html
Copyright © 2011-2022 走看看