`
rayn115
  • 浏览: 70254 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

高效的Java异常处理

    博客分类:
  • Java
阅读更多

Java开发人员可以做出的最重要的架构性决策之一就是如何使用Java异常模型。Java异常一直以来就是社群中许多争议的靶子。有人争论到,在 Java语言中的异常检查已是一场失败的试验。本文将辨析,失败的原因不在于Java异常模型,而在于Java类库的设计者未能充分了解到方法失败的两个 基本原因。

本文倡导一种对异常条件本质的思考方式,并描述一些有助于设计的模式。最后,本文还将在AOP模型中,作为相互渗透的问题,来讨论异常的处理。当你能正确使用异常时,它们会有极大的好处。本文将帮助你做到这一点。

为何异常是如此重要


Java应用中的异常处理在很大程度上揭示了其所基于架构的强度。架构是在应用程序各个层次上所做出并遵循的决定。其中最重要的一个就是决定应用程序中的 类,亚系统,或层之间沟通的方式。Java异常是Java方法将另类执行结果交流出去的方式,所以值得在应用架构中给予特殊关注。

一个衡量Java设计师水平和开发团队纪律性的好方法就是读读他们应用程序里的异常处理代码。首先要注意的是有多少代码用于捕获异常,写进日志文件,决定 发生了什么,和在不同的异常间跳转。干净,简捷,关联性强的异常处理通常表明开发团队有着稳定的使用Java异常的方式。当异常处理代码的数量甚至要超过 其他代码时,你可以看出团队之间的交流合作有很大的问题(可能在一开始就不存在),每个人都在用他们自己的方式来处理异常。

对突发异常的处理结果是可以预见的。如果你问问团队成员为什么异常会被抛出,捕获,或在特定的一处代码里忽视了异常的发生,他们的回答通常是,“我没有别 的可做”。如果你问当他们编写的异常真的发生了会怎么样,他们会皱皱眉,你得到的回答类似于这样,“我不知道。我们从没测试过。”

你可以从客户端的代码判断一个java的组件是否有效利用了java的异常。如果它们包含着大堆的逻辑去弄清楚在何时一笔操作失败了,为何失败,是否有弥 补的余地,那么原因很有可能要归咎于组件的报错设计。错误的报错系统会在客户端产生大量的“记录然后忘掉”的代码,这些代码鲜有用途。最差的是弄拧的逻 辑,嵌套的try/catch/finally代码块,和一些其他的混乱而导致脆弱而难于管理的应用程序。

事后再来解决Java异常的问题,或根本就不解决,是软件项目产生混乱并导致滞后的主要原因。异常处理是一个在设计的各个部分都急需解决的问题。对异常处 理建立一个架构性的约定是项目中首要做出的决定。合理使用Java异常模型对确保你的应用简单,易维护,和正确有着长远的影响。

解析异常


正确使用Java异常模型所包含的内容一直以来有着很大的争议。Java不是第一种支持异常算法语义的;但是,它却是第一种通过编译器来执行声明和处理某些异常的规则的语言。许多人都认为编译时的异常检查对精确的软件设计颇有帮助。图1显示的Java异常的等级。

\\\\\\\\\"><img src=Barry Ruzek 被Open Group提名为注册IT设计师的大师。他有着30多年的开发操作系统和企业应用的经验。

(转摘自: http://www.blogjava.net/jinfeng_wang/archive/2007/12/12/167119.html)

分享到:
评论

相关推荐

    高效java异常处理机制

    通过遵循上述最佳实践,开发者可以编写出更健壮、可维护的Java代码,有效地利用Java异常处理机制来提高程序的稳定性。同时,阅读并理解"Effective Java Exceptions"文档可以帮助进一步深化对Java异常处理的理解。

    高效的java异常处理框架高效的java异常处理框架高效的java异常处理框架

    高效的 Java 异常处理框架 Java 异常处理是 Java 语言中的一个关键组件,用于处理程序运行过程中的错误和异常。在 Java 中,异常处理框架是 Java 语言健壮性的一个重要体现。本文将从 Java 异常的基本概念和语法...

    深入探索高效的Java异常处理框架

    本文深入探讨了高效Java异常处理框架,旨在提高代码的健壮性和稳定性。首先,文章介绍了异常的基本概念和Java异常体系结构。 Java将异常视为对象来处理,所有的异常都继承自`java.lang.Throwable`类。Throwable类有...

    高效的Java异常处理框架.dot

    高效的Java异常处理框架

    深入探索 高效的Java异常处理框架

    什么时间使用runtimeException,什么时间使用Exception,大家有没有被困扰到?经整理,JAVA异常处理框架,以及如何构造自己的异常体系,讲得比较详细,值得一看。

    Java异常处理,非常适合Java爱好者

    总之,Java异常处理是编程实践中不可或缺的一部分,Java爱好者和开发者需要深入理解并熟练运用这些概念和技巧,以编写出更加稳定和高效的程序。通过不断地实践和学习,你会发现自己在处理复杂问题时变得更加游刃有余...

    高效的java异常处理

    因此,异常处理是Java编程中不可或缺的一部分。 在Java中,异常处理机制是通过try-catch-finally语句块实现的。当一个异常在try块中被抛出时,控制权会立即转移到相应的catch块。catch块是用来处理特定类型的异常,...

    Java异常处理策略研究.pdf

    Java 异常处理策略研究 本文研究了 Java 异常处理策略,着重于分析 Java 异常处理的逻辑、阐述了异常类、异常处理机制 ...编程人员可以根据实际情况选择合适的 Java 异常处理策略,编写出更加简洁、高效的程序代码。

    高效的Java异常处理框架.pdf

    高效的Java异常处理框架.pdf

    java内存机制及异常处理

    Java内存机制是Java虚拟机(JVM)的关键组成部分,它管理着程序运行时的数据存储。在Java中,内存主要分为以下几个区域: ...正确理解和运用Java内存机制以及异常处理机制对于开发健壮、高效的Java应用程序至关重要。

    Java异常处理机制的静态编译实现与优化

    异常处理机制是面向对象语言普遍支持的提高软件可靠性的方法。作为两款被广泛使用的面向对象语言,C++和Java语言都支持异常处理机制...该算法可以同时支持C++和Java异常处理机制,并有效提高了抛出异常较多的程序的性能。

    Java异常处理及应用

    ### Java异常处理及应用 #### 一、引言 异常是指在程序运行过程中发生的非正常事件,例如除零溢出、数组越界、内存溢出等。这些异常事件会导致程序无法正常运行。为了提高程序的健壮性,在设计程序时需要充分考虑...

    异常处理机制知识点小总结

    下面是对Java异常处理机制的详细解析。 在Java中,异常是程序运行时发生的错误,它中断了正常的代码流程。异常类继承自`java.lang.Throwable`,分为两种类型:Error和Exception。Error是系统级别的问题,如虚拟机...

    JAVA异常处理原因方法

    ### JAVA异常处理原因方法 #### 程序错误原因与概念 在软件开发中,程序错误是不可避免的,它们可以大致分为三类:编译错误、运行错误和逻辑错误。 - **编译错误**,也被称为“语法错误”,这类错误是在编译阶段...

    java 异常类处理

    在Java编程语言中,异常处理是一项关键特性,用于在程序执行过程中捕获并处理错误或非正常情况。本文将深入探讨Java中的异常类处理,包括异常的分类、处理机制以及如何有效地利用源码和工具进行调试。 首先,Java中...

    java异常框架处理.pdf

    在Java异常处理中,我们还需要注意几个关键字:`throw`、`throws`和`try`。`throw`是用来抛出一个具体的异常对象,`throws`通常用于方法签名后,用来声明这个方法可能会抛出的异常类型,这样调用这个方法的上层代码...

    java 多线程异常处理

    本实验报告主要涵盖了Java异常处理机制、多线程概念与实现,以及多线程同步问题。 首先,Java的异常处理机制包括了五个关键字:`try`、`catch`、`finally`、`throw`和`throws`。在实验题1中,我们看到了`try-catch`...

Global site tag (gtag.js) - Google Analytics