java中的异常类型与处理方法
来源:互联网 发布:淘宝爆款计划表 编辑:程序博客网 时间:2024/05/20 19:15
在写Java程序的过程当中。我们不可避免的会出现各种各样的问题。比如人开车去某一个地方的时候,中途可能出现发动机坏了,在路上有一个大石头挡住了道路等都是有可能出现。
上面例子所说的车的发动机出现了问题,就是Error问题,当然在java程序中出项这样的问题,我们只能重启程序。而我现在要说的是另一类,就是Exception,亦即异常。在Exception中,分为两类,一种是CheckedException,(check加一个ed表示过去式,即检查过的,就是我们所说的编译时异常。)还有一类是UnCheckedException,相应的就是编译的时候不发现异常,而是在运行的时候发现异常,即运行时异常。下面分别举两个例子说明上述的两种异常。
首先说一下运行时异常。
int i=1/0;
显然在在编译的时候并不会报错,但是在运行的时候我们知道会抛出by zero的错误。
而编译时异常的时候,比如下面这句代码:
明显编译的时候就不能通过,我们可以通过try,catch的方法处理:
当然,这里说到了try,catch,我们想想,如果程序可能出现异常,那么我们应该让程序如何处理了?
一种方法是使用try,catch以及finally进行捕捉,手动的进行处理,
另一种就是通过Throw语句扔给上一层,出现问题我不管,我只管向上面抛就是了,当然最后还是要处理的,比如我们在某一个方法出现异常的时候向上抛,一直向上面抛,直到抛给main方法,好,main方法也说,我不管,我也要向上抛,这里可以看到的是好像并没有处理,其实main方法向上抛给了jre,jre处理了。
第一种方法:使用try,catch以及finally进行捕捉的时候,我们看看程序执行的顺序。
在try语句中,写上可能出现异常的语句,这里应该注意的是,写在try中的语句并不是一定会发生错误的,只是有可能会出现错误,
如果没有出现异常,则会执行完try中的语句后跳过catch直接执行finally中的语句。
如果比如语句二出现异常,则会执行catch中的语句,然后执行finally中的,
可以看出无论程序有没有异常,都会执行finallly语句中的,这时候,我们既可以把一些比如关文件流的语句写在finally语句中,因为无论你程序出没出现异常,最后都要关闭文件流。
- java中的异常类型与处理方法
- Java中的常用异常处理方法
- Java中的常用异常处理方法
- Java中的常用异常处理方法
- Java中的常用异常处理方法
- Java中的常用异常处理方法
- JAVA中的异常类型
- java中的异常类型
- python中的异常类型处理
- Java中的异常处理
- JAVA中的异常处理
- Java中的异常处理
- JAVA中的异常处理
- java中的异常处理
- Java中的异常处理
- java中的异常处理
- Java中的异常处理
- java中的异常处理
- Yii2 RBAC
- HashMap Hashtable区别
- javascript 自定义弹窗 自定义参数 过渡
- Android 抽屉效果的导航菜单实现
- java中HashMap详解
- java中的异常类型与处理方法
- HashMap深度解析(一)
- iOS 【Multithreading-栅栏函数/快速迭代(剪切图片)/队列组(图片水印)】
- 【MyBatis框架】Mybatis开发dao方法第二部分
- 一分钟上手artTemplate
- React Native UI布局总结
- Qt中使用WMI时遇到的那些坑儿
- C++中的friend友元函数详细解析
- 防止僵尸进程的fork编程