异常处理

Posted 猫九丶

tags:

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

概念
java异常是处理程序中错误的一种机制, 错误通常指的是程序在运行的过程中发生的一些异常事件, 比如0作为除数, 数组下标越界, 流读取的文件不存在

设计程序的时候应该在异常发生的时候能友好的处理一下这些异常

java中出现的异常事件都可以生成一个异常类的对象, 这个对象将异常发生的信息封装起来交给java虚拟机引擎去处理, 这个过程成为抛出(throw)异常

当java虚拟机接收到异常对象, 会寻找能处理这一异常的代码, 这个过程称为捕获(catch)异常

try{//用在可能出现异常的代码语句上
...
} catch(Exception e) {
e.printStackTrace();//打印输出这个错误的一串信息
}

自己定义的异常
.....extends Exception

异常分类:
Throwable--所有异常类的父类
Exception--可能出现的异常
RuntimeException(运行时异常)--经常出现
可以不用catch
其他的必须catch
流中的IOException
Error--系统错误, 虚拟机错误, 管不了

异常的捕获和处理
try{
...
} catch (Exception e) {
e.printStackTrace();
} finally {
一定会执行的代码块
}

声明方法的异常
throws--将某个方法的异常抛出, 谁调用这个方法, 谁去处理异常
当throws写在main方法上的时候就会把异常打印出来
异常要及时处理

异常的处理其他问题
在一个try语句中, 基类异常的捕获语句不可以写在子类异常捕获的语句上面

自定义异常
extends Exception
extends RuntimeException

方法重写中异常
重写方法需要抛出与原方法类型一致的异常, 或者不抛出异常

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

java异常处理详解!!

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

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

异常处理,约束,MD5加密,日志处理

PHP异常处理

Java的异常处理语法