博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java分享第三天(异常)
阅读量:6250 次
发布时间:2019-06-22

本文共 859 字,大约阅读时间需要 2 分钟。

异常的处理办法之一

捕获异常(try,catch,finally) 

1 try语句指定了一段代码,该段代码就是一次捕获并处理的范围。在执行过程中,当任意一条语句产生异常时,就会跳过该段中后面的代码。代码中可能会产生并抛出一种或几种类型

的异常对象,它后面的catch语句要分别对这些异常做相应的处理

注:当异常处理的代码执行结束后,是不会回到try语句去执行尚未执行的代码。

2 finally语句无论是否发生异常都会执行:通过 在finally中关闭程序块已打开的资源,比如:文件流,释放数据库连接等

3 catch语句

每个try语句块可以伴随一个或多个catch语句,用于处理可能产生的不同类型的异常对象。

常用方法:

toString()方法,显示异常的类名和产生异常的原因

getMessage()方法,只显示产生异常的原因,但不显示类名

printStackTrace()方法,用来跟踪异常事件发生时堆栈的内容

这些方法均继承自Throwable类

catch捕获异常时的捕获顺序:如果异常类之间有继承关系,在顺序安排上需注意,越是顶层的类,越放在下面,再不然就直接把多余的catch省略掉(需要把子类

FileNotFoundException

放前面 ,父类

IoException

放后面)

try{FileReader reader= new FileReader("d:/a.txt"); char c=      (char)reader.read();}catch(FileNotFoundException e){e.pintStacktrace(); }catch(IoException e){e.pintStacktrace(); }

 

如果运行程序时遇到异常,会先执行finally语句块,然后才返回try中的return,如果finally中有return,刚返回return中的值

 

转载于:https://www.cnblogs.com/tiancy/p/6015705.html

你可能感兴趣的文章
40岁应该学会的是面对和取舍
查看>>
UVA 12493 Stars (欧拉函数--求1~n与n互质的个数)
查看>>
PHP高级教程-异常处理(Exception)
查看>>
2017年第六届数学中国数学建模国际赛(小美赛)比赛心得
查看>>
6.C#知识点:反射
查看>>
CXF2.7整合spring发布webservice
查看>>
神经网络优化(三) - 全连接网络基础
查看>>
整形越界,死循环,产生莫名其妙的问题
查看>>
帝国cms支持的变量及灵动标签变量汇总
查看>>
【博客园客户端】博客园Android客户端更新:离线下载、本地收藏、RSS阅读
查看>>
here is the code for MJPG video capture on ip camera
查看>>
python urllib2 (转)
查看>>
[原]浅谈几种服务器端模型——反应堆模式(基于epoll的反应堆)
查看>>
关于 Content-Encoding: gzip - 知道创宇
查看>>
linux lftp命令
查看>>
跟JBPM学设计模式之工厂方法模式
查看>>
extern用法详解
查看>>
推荐几款软件界面模型设计工具
查看>>
存储过程传言
查看>>
JavaScript求当月天数
查看>>