zoukankan      html  css  js  c++  java
  • Java异常处理-----finally

    finally

    1: 实现方式一:

    try{ // 可能发生异常的代码 } catch( 异常类的类型 e ){ // 当发生指定异常的时候的处理代码 }catch…
    比较适合用于专门的处理异常的代码,不适合释放资源的代码。

    2:实现方式二:

    try{ } catch(){} finally{ // 释放资源的代码 }
    finally块是程序在正常情况下或异常情况下都会运行的。
    比较适合用于既要处理异常又有资源释放的代码

    3:实现方式三

    try{ }finally{ // 释放资源 }
    比较适合处理的都是运行时异常且有资源释放的代码。

    4:finally:关键字主要用于释放系统资源。

    1:在处理异常的时候该语句块只能有一个。
    2:无论程序正常还是异常,都执行finally。

    5:finally是否永远都执行?
    1:只有一种情况,但是如果JVM退出了System.exit(0),finally就不执行。
    2:return都不能停止finally的执行过程。

    6:案例使用流

    1:使用FileInputStream加载文件。

    导包import java.io.FileInputStream;

    2:FileNotFoundException

    导入包import java.io.FileNotFoundException;

    3:IOException

    import java.io.IOException;

    public class FinallyDemo {
        // 本例子使用finally 关闭系统资源。
        public static void main(String[] args) {
    
            FileInputStream fin = null;
            try {
                System.out.println("1创建io流可能出现异常");
                fin = new FileInputStream("aabc.txt"); // 加载硬盘的文本文件到内存,通过流
                // System.out.println(fin);
            } catch (FileNotFoundException e) {
                System.out.println("2没有找到abc.txt 文件");
                System.out.println("3catch 了");
                // System.exit(0);
                // return;
            }
            // finally
            finally {
                System.out.println("4fianlly执行");
                if (fin != null) { // 如果流对象为null 流对象就不存在,没有必要关闭资源
                    try {
                        fin.close();
                    } catch (IOException e) {
                        e.printStackTrace();
                        System.out.println("close 异常");
                    }
    
                }
                System.out.println("5finally over");
            }
            System.out.println("6mainover");
        }
    }
    
    
    // 2:无论程序正常还是异常,都执行finally。 但是遇到System.exit(0); jvm退出。
    // finally用于必须执行的代码, try{} catch(){}finally{}
    // try{}finally{}

    【正在看本人博客的这位童鞋,我看你气度不凡,谈吐间隐隐有王者之气,日后必有一番作为!下面有个“顶”字,你就顺手把它点了吧(要先登录CSDN账号哦 )】


    —–乐于分享,共同进步!
    —–更多文章请看:http://blog.csdn.net/duruiqi_fx


  • 相关阅读:
    一个切换鼠标左右手的小工具
    聊一聊高并发高可用那些事
    PHP 笔记
    PHP 安装 XDebug
    php symfony/var-dumper 打印插件
    PHP字符串和数组
    ThinkPHP自定义分页模板
    匿名函数
    SQL优化工具
    spring cloud 服务容错保护
  • 原文地址:https://www.cnblogs.com/hainange/p/6153838.html
Copyright © 2011-2022 走看看