异常处理

Posted 空城泪

tags:

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

编译时异常:

指编译器在编译期告诉我们,调用的方法可能会抛出某个或某几个异常,需要我们处理,否则编译不通过,表现形式是在调用方法处打上红线,指过去出现Unhandeled Exception

 

另外,编译时异常又被称为检查异常

 

错误:

程序员不能够用代码去解决的问,往往是硬件、环境、系统问题;

 

一个我那阵的方法申明:访问修饰符 可选修饰符 返回类型,方法名

形参列表 throws 抛出的异常列表。

throws还会影响到重写的规范——子类重写方法不能抛出比父类重写方法更多的异常:

更多不是指throws 的类型更多,而是指范围更大。

 

Throw 和 throws 的辨析:

1、          Throw和throws都是关键字,都是属于异常处理部分的;

2、          Throw 是写在方法体当中的,后面跟的是一个异常对象;Throws是写在方法申明的最后的,后面跟的是一个或多个异常类

3、          当运行到throw 这句代码的时候,就会真正发生抛出一个异常对象的动作。Throws是在编译期警告本方法的条用者,有可能会发生哪些类型的异常;

4、          当一个方法体当中,有throw语句,不一定会有throws;除非throw后面跟的是编译时异常,那就必须写throws;

 

自定义异常要求:

1、自定义异常一定要继承Exception

2、自定义异常至少要有两个带参构造,一个带异常参,一个带字符创参。前者用于把其它异常类型转为为自定义异常,后者用于操作非JVM主动抛出的业务异常(比如:工资为负)

3、可以给自定义异常提供扩展方法

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

java异常处理详解!!

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

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

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

PHP异常处理

Java的异常处理语法