• 【异常-举例6:finally】


    finally 的特点
        被 finally 控制的语句体一定会执行
        特殊情况:在执行到 finally 之前 jvm 退出了(比如 System.exit(0))
    finally 的作用
        用于释放资源,在 IO 流操作和数据库操作中会见到
    
    final,finally 和 finalize 的区别:
    final:最终的意思,可以修饰类,成员变量,成员方法
        修饰类,类不能被继承
        修饰变量,变量是常量
        修饰方法,方法不能被重写
    finally:是异常处理的一部分,用于释放资源。
        一般来说,代码肯定会执行,特殊情况:在执行到 finally 之前 jvm 退出了
    finalize:是 Object 类的一个方法,用于垃圾回收
    
    如果 catch 里面有return 语句,请问 finally 的代码还会执行吗?如果会,请问是在 return
    前还是 return 后?会执行。前。准确的说,应该是在中间。
    
    try...catch...finally 的格式变形
        A:try...catch...finally 
        B:try...catch 
        C:try...catch...catch...
        D:try...catch...catch...finally 
        E:try...finally 这种做法的目前是为了释放资源。
    package com.test;
    
    import java.text.ParseException;
    import java.text.SimpleDateFormat;
    import java.util.Date;
    
    /**
     * @author shusheng
     * @description
     * @Email shusheng@yiji.com
     * @date 2018/10/10 16:10
     */
    public class FinallyDemo {
        /**
         *finally:被 finally 控制的语句体一定会执行
         *注意:如果在执行到 finally 之前 jvm 退出了,就不能执行了。
         *
         *A:格式
         *try...catch...finally...
         *B:用于释放资源,在 IO 流操作和数据库操作中会见到
         */
        public static void main(String[] args) {
    
            String s = "2014-11-20";
            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    
            Date d = null;
            try {
                d = sdf.parse(s);
            } catch (ParseException e) {
                e.printStackTrace();
                //System.exit(0);    如果有这条语句就不执行 finally 语句
            } finally {
                System.out.println("这里的代码是可以执行的");
            }
            System.out.println(d);
        }
    
    }
    终身学习者
  • 相关阅读:
    报表自动化: 商业智能背后的秘密
    谈谈个人对 TDD (测试驱动开发) 的理解
    初识 Inception
    从软件生命周期看应用安全(网络安全)
    Spring JPA save 实现主键重复抛异常
    QMdiArea及QMdiSubWindow实现父子窗口及布局方法
    QTcpServer实现多客户端连接
    C++设计模式
    QTreeView/QTableView中利用QStandardItem实现复选框三种形态变化
    Qt富文本编辑器QTextDocument
  • 原文地址:https://www.cnblogs.com/zuixinxian/p/9768788.html
Copyright © 2020-2023  润新知