- 浏览: 494623 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (301)
- Swing技术 (1)
- Linux (1)
- Javascript (22)
- 数据结构和算法 (3)
- J2SE (36)
- workflow (5)
- 设计模式 (14)
- web service (19)
- Ajax (14)
- 中间件 & 服务器 (8)
- 多线程 (9)
- Oracle (52)
- sys & soft (10)
- JMS (3)
- sso (9)
- android (11)
- struts2 (10)
- web协议 (2)
- 分布式 (2)
- PM (2)
- OLAP (3)
- Redis (2)
- Hibernate (7)
- ibatis (2)
- SQLServer (1)
- maven (3)
- Spring (7)
- Jsp (2)
- slf4j (1)
- jQuery (15)
- 权限 (1)
- 系统集成 (1)
- 笔记 (1)
- Freemarker (2)
- 项目管理 (1)
- eclipse (3)
- GIS (1)
- NoSql (3)
- win10 (1)
- win10网络 (2)
- 底层 (3)
- 数据库 (0)
最新评论
-
kabuto_v:
请问那种图,uml图是怎么画出来的呢?是您自己手工画的,还是有 ...
FastJSON 序列化、反序列化实现 -
梦行Monxin商城系统:
电商实例、业务并发、网站并发及解决方法 -
rockethj8:
client 㓟有一个参数是可以忽略一些URL 不进行验证登录 ...
SSO 之 (单点登录)实施中遇到的几个问题 -
mengxiangfeiyan:
好啊。。。。。
Oracle删除表,删除数据以及恢复数据、利用现有表创建新表
http://java.chinaitlab.com/experience/860321_2.html
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”);
}
}
}
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”);
}
}
}
发表评论
-
底层读写-NIO实战
2016-03-04 10:51 824最近参与实现底层高并发处理的项目,接收socket ... -
底层网络读写
2016-03-04 10:49 566Java NIO:NIO概述 http://w ... -
java方法返回多个值
2016-01-22 09:11 763http://www.iteye.com/topic/114 ... -
模拟form表单上传图片
2016-01-19 17:23 750转自:http://blog.csdn.net/5iasp ... -
java包装类的几点注意
2016-01-18 10:52 796java中8种基本类型变量对应的包装类: ... -
JAVA调用聚合天气api接口示例
2016-01-15 09:42 4028http://www.iteye.com/topic/114 ... -
java对象序列化过程
2016-01-05 10:22 734一、 http://bbs.csdn.net/topi ... -
Java6 枚举常见7种用法
2014-02-09 23:02 846http://blog.csdn.net/shimiso/a ... -
异常 之 异常体系
2013-10-07 23:00 892J2EE系统异常的处理准则 ... -
Java图片剪裁功能实现
2013-07-28 23:17 1493http://shensy.iteye.com/blog/16 ... -
让frameset居中
2013-07-25 19:59 0JSPHTML 平常我个人开发页面时,一般用width ... -
session生命周期
2013-07-23 08:40 0http://blog.sina.com.cn/s/blog_ ... -
转发和重定向的区别
2013-07-23 08:30 0http://www.2cto.com/kf/201107/9 ... -
NIO 之 BIO和NIO机制和socket
2013-07-14 18:38 1406https://www.ibm.com/developerwo ... -
win7下安装配置tomcat,java运行环境
2013-06-30 19:39 0http://www.cnblogs.com/pannysp/ ... -
JSP之 操作Cookie
2013-06-12 18:09 0Cookie应该是一 ... -
Socket实战之二 多线程通信
2013-05-31 15:15 0http://blog.csdn.net/kongxx/art ... -
Socket实战之七 使用Socket通信传输文件
2013-05-31 15:10 882http://blog.csdn.net/kongxx/art ... -
Socket实战之六 使用NIO包实现Socket通信
2013-05-31 15:06 1149本文地址:http://blog.csdn.net/kongx ... -
Socket实战之五 使用加密协议传输对象
2013-05-31 15:01 1286http://blog.csdn.net/kongxx/art ...
相关推荐
这种方法使得JCVM能够在遇到异常时快速定位到正确的处理代码,并执行相应的`catch`块或`finally`块。这不仅简化了异常处理流程,还提高了智能卡应用程序的执行效率。 #### 三、JCVM异常处理机制的设计与实现 在...
结构化异常处理是Windows平台上的一个特殊异常处理机制,主要用于处理特定类型的异常,如访问违规或非法指令等。对于Windows程序员来说,掌握SEH是非常必要的,因为它可以帮助开发者处理那些可能无法通过普通的C++...
异常处理的好处之一是可以先专注于解决问题,然后在其他地方处理代码中的错误: - 一个`try`子句可能抛出多种不同的异常,这就要求定义多个`catch`子句来捕获不同类型的异常。 - 每个`catch`子句接收并处理一种异常...
在Java编程中,异常处理是程序健壮性的重要组成部分,它确保了程序在遇到错误时能够优雅地处理问题,而不是突然崩溃。本文将深入探讨Java的异常处理机制,结合"Effective Java Exceptions"文档中的观点,来揭示如何...
1. 异常捕获:通过编程语言提供的异常处理机制(如Java的try-catch-finally,Python的try-except-finally等),捕获运行时发生的异常。 2. 异常日志记录:详细记录异常信息,包括时间、位置、异常类型、堆栈跟踪等,...
1. **异常处理的基本框架**:基于TRY-CATCH-FINALLY模式构建工作流异常处理的基本框架,但需适应工作流系统的特殊需求,例如人工干预和异常发生处的继续执行。 2. **事务机制的应用**:利用事务机制来保证工作流任务...
- **捕获异常**:开发者可以通过`try`、`catch`和`finally`等关键字来捕获并处理异常。 #### 二、异常处理方法 ##### 1. try...catch 语句 - **try块**:用来指定可能会抛出异常的代码段。 - **catch块**:用于...
在编程领域,异常处理是确保程序稳定性和健壮性的关键机制之一。尤其在Java这样的面向对象语言中,异常处理尤为重要。本文将重点介绍异常的基本分类及其处理方法,并针对“有时无法catch exception,这时需要考虑...
在这个“java 异常处理练习”中,我们将深入探讨`try-catch-finally`、`throw`和`throws`关键字的使用,以及它们在确保程序稳定性和可靠性中的作用。 1. **try-catch-finally**:这是Java异常处理的核心构造,用于...
捕获和处理异常可以使用 try...catch...finally 结构来实现,语句格式为: ``` try { 可能出现异常的语句 } catch (异常类名 异常对象名) { 异常类中处理代码 } finally { 必须执行的语句 } ``` 其中,try 块将一...
finally 语句块是 Python 异常处理机制的最后一个部分,它用于定义无论是否出现异常都需要执行的代码段。finally 语句块通常用于释放资源和关闭文件等操作。 在 Python 中,还有一些其他的异常处理机制,例如 debug...
异常处理通过try-catch-finally语句块来实现,当try块中的代码抛出异常时,catch块会捕获并处理异常,finally块则确保某些代码(如资源清理)无论是否发生异常都会执行。 2. **Android的异常处理**:与Java不同,...
1. **Java异常处理机制**:Java异常处理是通过一组关键字(try、catch、finally、throw和throws)来实现的,这些关键字帮助我们检测、捕获和处理异常。当程序中出现异常时,会触发异常对象的创建,并通过调用栈传递...
`try`块包含可能会抛出异常的代码,`catch`块用来捕获并处理异常,`finally`块则包含无论是否发生异常都需要执行的代码,比如资源的释放。 Java 7引入了`try-with-resource`语句,可以自动关闭实现了`AutoCloseable...
- 不要忽略异常:即使捕获异常后没有特殊处理,也应该至少打印一条错误消息,以便追踪问题。 - 避免过度使用通用异常:尽量捕获和处理特定异常,而不是一律使用Exception。 - 使用finally块确保资源释放:对于需要...
**结束处理的特殊语法**包括`__leave`关键字,它允许直接从受保护的代码块跳转到`__finally`块,而不经过正常的出口。此外,`AbnormalTermination()`是一个内部函数,用于判断是否通过异常方式进入`finally`块,如果...
异常(Exception)是Java中一种特殊的运行错误对象,它代表了程序执行期间发生的非正常情况,需要进行处理以避免程序中断。 18.1 异常类结构与组成 Java中的异常都源自`java.lang.Throwable`类。Throwable有两个...
- **可恢复性**:处理异常的目标之一是让程序能够恢复正常运行。 - **可追踪性**:记录异常信息,以便后续分析和追踪。 #### 第二章:错误处理的策略 **预防性策略** - **编码规范**:制定严格的编码准则,减少因...
终止处理程序(Termination Handler)是Windows结构化异常处理(SEH, Structured Exception Handling)机制的一部分,主要用于确保某些重要的清理工作能够被执行,即使是在程序出现异常或正常退出的情况下。...