首页
|
互联网
|
IT动态
|
IT培训
|
Cisco
|
Windows
|
Linux
|
Java
|
.Net
|
Oracle
|
软件测试
|
C/C++
|
嵌入式开发
|
存储世界
|
服务器
网络设备
|
IDC
|
安全
|
求职招聘
|
数字网校
|
笔记本电脑
|
北大青鸟
|
技术专题
|
电子书下载
|
教学视频
|
源码下载
|
搜索
|
博客
|
论坛
输入您的搜索字词
提交搜索表单
首页
资讯动态
认证考试
新手入门
核心技术
高级技术
J2EE
J2ME
Java&XML
开源技术
其他技术
RSS订阅
论坛
专题
您现在的位置:
中国IT实验室
>>
Java
>>
核心技术
>>
高级编程
>> 正文
Java编程中异常处理的特殊情况
ChinaItLab
xiaoyuer
2007-4-29
保存本文
推荐给好友
收藏本页
欢迎进入Java社区论坛,与200万技术人员互动交流 >>进入
1、不能在finally块中执行return,continue等语句,否则会把异常“吃掉”;
2、在try,catch中如果有return语句,则在执行return之前先执行finally块
请大家下面的例子:
public
class
TryTest {
public
static
void
main(
String
[] args) {
try
{
System
.out.println(TryTest.test());
// 返回结果为true其没有任何异常
}
catch
(
Exception
e) {
System
.out.println(
"Exception from main"
);
e.printStackTrace();
}
doThings(0);
}
public
static
boolean
test()
throws
Exception
{
try
{
throw
new
Exception
(
"Something error"
);
// 第1步.抛出异常
}
catch
(
Exception
e) {
// 第2步.捕获的异常匹配(声明类或其父类),进入控制块
System
.out.println(
"Exception from e"
);
// 第3步.打印
return
false
;
// 第5步. return前控制转移到finally块,执行完后再返回(这一步被吃掉了,不执行)
}
finally
{
return
true
;
// 第4步. 控制转移,直接返回,吃掉了异常
}
}
public
static
void
doThings(
int
i)
{
try
{
if
(i==0)
{
//在执行return之前会先执行finally
return
;
}
int
t=100/i;
System
.out.println(t);
}
catch
(
Exception
ex)
{
ex.printStackTrace();
}
finally
{
System
.out.println(
"finally"
);
}
}
}
【责编:Peng】
相关文章
Java问题解析:到底创建了几个String对象?
用java生成缩略图和给图上打上公司logo
JAVA的18条BASE
java获得当前系统内存及硬盘使用情况
Java计时器Timer 使用
java关闭窗体的六种方法
java资源获取分析
使用JAVA访问ACCESS数据库的方法
Java创建文件夹的方法
java句柄以及对象的比较
编辑推荐
· [
基础入门
]
Java源代码的折行规则
· [
基础入门
]
Java面试题:第三锦
· [
基础入门
]
Java面试题:第二锦
· [
基础入门
]
走进Java 7模块系统
· [
基础入门
]
网友经验分享:学好Java开发的关键7步
· [
开发工具
]
Java开发工具全面比较
· [
资讯动态
]
Java与Flash谁才是网页游戏领导者?
· [
资讯动态
]
专家解答:创建表格与数据库进行交互
· [
基础入门
]
热点讨论:Java编程风格的改变
· [
基础入门
]
选择学习“下一个”程序语言
相关产品和培训
文章评论
友情推荐链接
·
Asp源码
PHP源码
·
CGI源码
JSP源码
·
建站书籍教程
·
服务器软件
.net源码
·
建站工具软件
·
IDC资讯大全
·
机房品质万里行
·
IDC托管必备知识
·
网站推广优化
·
全国IDC报价
认证培训
专题推荐
·
算法分析与设计之五大常用算法
·
开发必备 漫谈Java加密保护
·
嵌入式开发--ARM技术专题
·
C/C++指针,认真了解,灵活运用
·
.NET开发:C#实用基础教程
·
软件测试工具QTP学习专题
·
嵌入式开发单片机解决方案专题
·
Java开发环境 Greenfoot 程序员手册
·
C++对象布局及多态实现的探索
·
常见排序算法的实现
今日更新
·
Java问题解析:到底创建了几个String对象?
·
用java生成缩略图和给图上打上公司logo
·
JAVA的18条BASE
·
关于解决MyEclipse 的耗内存的办法
·
java获得当前系统内存及硬盘使用情况
·
jsp页面滚动速度!
·
Java计时器Timer 使用
·
java关闭窗体的六种方法
·
java资源获取分析
·
使用JAVA访问ACCESS数据库的方法
社区讨论
博客论点
频道精选
·
新版CCNA考试大纲 07年8月1日生效
·
新手学习宝典:Linux常用命令全集
·
知已知彼,深入了解系统安全知识
·
从入门到精通 java初学者实践系列教程
·
共同学习——Oracle入门基础专题
·
ADO.net与PowerBuilder的综合比较
·
评论:中国互联网“钱”途何在?
·
中科院:龙芯要成"中国奔腾" 能卖1亿颗
Java 频道导航
新手入门
:
安装配置
|
开发工具
|
JDK
|
oop面向对象
核心技术
:
SwingAwtApplet
|
高级编程
|
网络编程
Jvm技术
|
JavaMedia
高级技术
:
设计模式
|
UML/OO
|
p2p/Jxta
|
多线程
|
JavaSecurity
J2EE
:
J2ee核心
|
Servlet/Jsp
|
EJB
|
JDBC/JDO
|
Rmi/Corba/Jini
|
Mvcwea
|
应用服务器
J2ME
:
核心技术
|
嵌入式
|
无线开发
Java&XML
:
XMLBeans
|
WebServices
开源技术
:
ANT
|
Struts
|
Hibernate
|
Spring
Eclipse
|
JBoss
|
Tomcat
|
JUnit
其他技术