美文网首页我与咖啡娘的爱恨情仇
06.finally的概述和应用场景

06.finally的概述和应用场景

作者: 今天庹 | 来源:发表于2018-10-15 20:17 被阅读0次

finally的概述和应用场景

finally使用格式:
try{
}catch(异常类型 异常变量){
}finally{
   //释放资源的代码
}
package com.itheima_01;

import java.io.FileWriter;
import java.io.IOException;

/*
 *  finally:组合try...catch使用,用于释放资源等收尾工作,无论try...catch语句如何执行,finally的代码一定会执行
 * 
 *  try {
 *      有可能出现问题的代码;
 *      
 *  } catch(异常对象) {
 *      处理异常;
 *  } finally {
 *      释放资源;
 *      清理垃圾;
 *  }
 */
public class ExceptionDemo5 {
    public static void main(String[] args) {
//      method();
        FileWriter fw = null;
        try {
            System.out.println(2 / 0);//如果fw.close()没有进行判断会出现java.lang.NullPointerException
            fw = new FileWriter("a.txt");
            fw.write("hello");
            fw.write("world");
//          System.out.println(2 / 0);//java.lang.ArithmeticException
            fw.write("java");
            
//          fw.close();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } finally {
            //释放资源
            try {
                if(fw != null) {
                    fw.close();
                }
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
    }

    private static void method() {
        try {
            System.out.println(2 / 0);
        } catch (ArithmeticException e) {
            System.out.println("除数不能为0");
        } finally {
            System.out.println("清理垃圾");
        }
    }
}

相关文章

  • 06.finally的概述和应用场景

    finally的概述和应用场景

  • Finally的概述和应用场景

    概述:finally组合try...catch语句使用,用于释放资源等收尾工作,无论try...catch语句怎么...

  • Python | 函数编程进阶版知识点

    一、lambda表达式 ▲ 掌握lambda表达式的作用和应用场景/掌握其各种应用技巧 匿名函数概述 Python...

  • 云数据库 Redis的应用与实践

    Redis缓存应用场景 对于查询较为频繁的数据,可以缓存至Redis中,以提高读取的性能; 场景概述 缓存应用实施...

  • 消息队列应用场景概述

    一、消息队列应用场景 1.1、异步处理 以用户注册,并且需要注册邮件和短信为例。 用户注册后,需要发送注册邮件和注...

  • Mycat概述与应用场景

    mycat是一个数据库中间件,也可以理解为是数据库代理。在架构体系中是位于数据库和应用层之间的一个组件,并且对于应...

  • Retrofit 2.0 应用场景概述

    最近最火的网络库应该是Retrofit了,我也在项目中耍了起来,可以说是非常的有趣。个人感觉是Retrofit网络...

  • 08.匿名对象的概述和应用场景

    匿名对象定义&使用 匿名对象即无名对象,直接使用new关键字来创建对象

  • Service的一些知识点

    内容概述: 1,Service的应用场景,以及和Thread的区别 2,开启Service的两种方式以及区别(st...

  • HLS协议介绍

    目录 概述 诞生的原因 当前的应用场景 技术架构 HLS的技术要点 参考阅读 1. 概述 HTTP Live St...

网友评论

    本文标题:06.finally的概述和应用场景

    本文链接:https://www.haomeiwen.com/subject/tpgfzftx.html