try catch处理流的异常

Posted wmqiang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了try catch处理流的异常相关的知识,希望对你有一定的参考价值。

1、try catch处理异常

try{} catch(Exception e){} finally{ 必然执行的代码,一般是释放资源 }

技术图片

2、流使用try catch处理异常

 技术图片

其中,变量作用域只在当前方法体即大括号范围,为创建流对象变量要放在try 方法体外面,初始化为 null;

变量创建时候尽量要初始化一下,因为在使用必须有值,即栈内存中的这个变量存储的地址值,指向堆内存中此对象的地址,必须有,否则报NullPointException;

在调用构造方法创建流对象的时候,以路径为入参的时候,除了最后的文件名前面的路径地址若不存在则会报(找不到系统路径);

流对象的 close() 方法在定义时候是声明了异常的,所以调用时候必须要处理异常,直接throws没有意义,一般是try catch处理异常;

技术图片

在 finally 方法体中,流对象在调用close方法体时,如果 try 方法体中的创建流对象失败了,则流对象还是保持初始化时候的null值,则又会报NullPointException;

所以要优化代码,再加一层是否控制判断;

 

以上是关于try catch处理流的异常的主要内容,如果未能解决你的问题,请参考以下文章

Java中使用try-catch-finally处理IO流中的异常

Kotlin 协程Flow 流异常处理 ( 收集元素异常处理 | 使用 try...catch 代码块捕获处理异常 | 发射元素时异常处理 | 使用 Flow#catch 函数捕获处理异常 )

Kotlin 协程Flow 流异常处理 ( 收集元素异常处理 | 使用 try...catch 代码块捕获处理异常 | 发射元素时异常处理 | 使用 Flow#catch 函数捕获处理异常 )

Java中try()...catch()用法

异常的运用

异常处理----使用 try…catch…finally 处理异常