异常
来源:互联网 发布:市政工程算量软件 编辑:程序博客网 时间:2024/05/16 02:00
----------------------------------------------------------------异常----------------------------------------------------------------
/**
* 异常
*
* 异常的体系:
* ------------|Throwable
* ----------------|Error(错误)错误一般是由于jvm或者硬件引发的问题,所以我们一般都不会通过代码去处理。
* ----------------|Exception(异常)异常我们一般都会通过代码去处理。
*
* -------------------|RuntimeExecption以及其子类都是:运行时异常:如果一个方法内部抛出了一个运行时异常,那么方法上可以声明也可以不声明,调用者可以处理,也可以不处理。
* -------------------|(除了运行时异常就是编译时异常)编译时异常:(非运行时异常、受检异常):如果一个方法内部抛出了一个编译时异常对象,那么方法上就必须要声明,而调用者也必须要处理。
* 注意:运行时异常是可以通过代码避免的,所有java虚拟机没有做强制要求,但运行时异常就不一样,很多情况都不能避免,所有jvm做了强制处理要求。
*
* 异常的处理方式
* 方式一:捕获处理
* 捕获处理的格式
* try{}catch(捕获的异常类型 变量名){}
* 捕获处理要注意的细节:
* 1.如果一个trykuai中出现了异常的代码,经过处理后,那么try-catch块外面的代码可以正常执行。
* 2.如果一个try块中出现了异常的代码,那么在try块中出现异常的代码后面的语句无法执行。
* 3.一个try块后面可以跟多个catch块,也就是一个try块可以捕获多种异常的类型,但是捕获的异常类型必须从小到大进行捕获。
* 方式二:抛出异常(throw throws)
* 抛出异常要注意的细节:
* 1.如果一个方法内部抛出了一个异常对象,那么该方法必须要声明抛出。
* 2.如果调用了一个声明抛出异常的方法,那么调用者必须要处理。
* 3.如果一个方法抛出了一个异常对象,那么该方法也会马上停止(一个方法遇到了throw关键字,那么该方法就会马上停止)
* 4.在一种情况下只能抛出一种异常对象。
* throw 关键字是用于方法体之内抛出的异常对象的,throws是用于方法声明抛出异常类型的。
*
*sun提供了很多的异常类,给我们用于描述程序中的不正常情况,但是sun提供的异常类还不足以描述我们现实生活中
*所有不正常情况,那么这个时候我们就需要定义异常类。
*
*需求:模拟feiQ上线的时候如果没有插上网线,那么就要抛出一个没有插上网线的异常。
*
*自定义异常类:继承Exception即可。
*
*
*/
/**
* 异常
*
* 异常的体系:
* ------------|Throwable
* ----------------|Error(错误)错误一般是由于jvm或者硬件引发的问题,所以我们一般都不会通过代码去处理。
* ----------------|Exception(异常)异常我们一般都会通过代码去处理。
*
* -------------------|RuntimeExecption以及其子类都是:运行时异常:如果一个方法内部抛出了一个运行时异常,那么方法上可以声明也可以不声明,调用者可以处理,也可以不处理。
* -------------------|(除了运行时异常就是编译时异常)编译时异常:(非运行时异常、受检异常):如果一个方法内部抛出了一个编译时异常对象,那么方法上就必须要声明,而调用者也必须要处理。
* 注意:运行时异常是可以通过代码避免的,所有java虚拟机没有做强制要求,但运行时异常就不一样,很多情况都不能避免,所有jvm做了强制处理要求。
*
* 异常的处理方式
* 方式一:捕获处理
* 捕获处理的格式
* try{}catch(捕获的异常类型 变量名){}
* 捕获处理要注意的细节:
* 1.如果一个trykuai中出现了异常的代码,经过处理后,那么try-catch块外面的代码可以正常执行。
* 2.如果一个try块中出现了异常的代码,那么在try块中出现异常的代码后面的语句无法执行。
* 3.一个try块后面可以跟多个catch块,也就是一个try块可以捕获多种异常的类型,但是捕获的异常类型必须从小到大进行捕获。
* 方式二:抛出异常(throw throws)
* 抛出异常要注意的细节:
* 1.如果一个方法内部抛出了一个异常对象,那么该方法必须要声明抛出。
* 2.如果调用了一个声明抛出异常的方法,那么调用者必须要处理。
* 3.如果一个方法抛出了一个异常对象,那么该方法也会马上停止(一个方法遇到了throw关键字,那么该方法就会马上停止)
* 4.在一种情况下只能抛出一种异常对象。
* throw 关键字是用于方法体之内抛出的异常对象的,throws是用于方法声明抛出异常类型的。
*
*sun提供了很多的异常类,给我们用于描述程序中的不正常情况,但是sun提供的异常类还不足以描述我们现实生活中
*所有不正常情况,那么这个时候我们就需要定义异常类。
*
*需求:模拟feiQ上线的时候如果没有插上网线,那么就要抛出一个没有插上网线的异常。
*
*自定义异常类:继承Exception即可。
*
*
*/
0 0
- 异常
- 异常!
- 异常
- 异常
- 异常
- 异常
- 异常
- 异常
- 异常
- 异常
- 异常
- 异常
- 异常
- 异常
- 异常
- 异常
- 异常
- 异常
- 原码补码反码以及位运算符
- Java使用极小的内存完成对超大数据的去重计数,用于实时计算中统计UV
- Hibernate单表开发步骤
- HTML第二课:表格、表单和框架
- Django笔记 CMS框架Mezzanine 2
- 异常
- JavaScript的变量作用域
- Ambari警报功能分析及源码解读
- Android 系统信息获取(CPU,RAM,ROM,Battery,SD-card,版本等)(转)
- 硬盘录像机数据恢复方法
- Android 朋友圈 输入框评论效果
- iOS 模糊效果实现
- R-CNN笔记2:rcnn_train.m文件
- 线程