关闭

java异常处理

151人阅读 评论(0) 收藏 举报
分类:

1、java语言的异常捕获结构由try、catch、finally组成,try语句存放的是可能发生异常的语句,catch用来激发捕获的异常,finally语句执行最后的部分,finally语句始终会执行。
2、当try中的语句发生异常,程序会调转到catch代码块中执行,执行完毕后,会执行finally代码块中的语句。在try和finally中同时存在return 语句,值返回finally的return结果,try中的结果将会覆盖。如果finally代码块中的语句尝试修改return结果,将会无效。
3、finally语句块
几种特殊情形,finally语句块不会执行、
(1)、在finally语句块中发生了异常;
(2)、在前面的代码中使用了System.exit(0)退出程序;并且出现在异常之前,否则不会执行到。
(3)、程序所在的线程死亡。
4、java常见异常
运行时异常:RuntimeException类及其子类异常,如NullPointerException、IndexOutOfBoundsException、classCastException、ArithmeticException等,这些异常是不检查异常,程序中可以选择捕获处理,也可以不处理。这些异常一般是由程序逻辑错误引起的,程序应该从逻辑角度尽可能避免这类异常的发生。
非运行时异常:RuntimeException以外的异常,类型上都属于Exception类及其子类。从程序语法角度讲是必须进行处理的异常,不处理程序不能编译通过。如IOException、FileNotFoundException、SQLException等以及用户自定义的Exception异常。
5、自定义异常
自定义异常步骤:
(1)、创建自定义异常类。extends Exception
(2)、在方法中通过throw关键字抛出异常
(3)、如果在当前抛出异常的方法中进行处理,使用trycatch语句块处理,否则,通过throws关键字抛给上一级进行处理。
6、throw和throws的区别
throw关键字用在方法体中,并且抛出一个异常对象。通过throw抛出异常后,如果想要在上一级处理,需要用throws关键字在该方法中声明。如果要捕获throw抛出的异常,必须使用try、catch语句块。throw通常用来抛出自定义异常。
throws 是将异常抛给上一级进行处理,可以抛出多个异常,使用“,”分割开。

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:8934次
    • 积分:493
    • 等级:
    • 排名:千里之外
    • 原创:41篇
    • 转载:1篇
    • 译文:0篇
    • 评论:0条