`
youfengkai
  • 浏览: 26864 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Java异常机制

阅读更多
如果方法中的代码产生了异常却没有进行处理,编译器就会发现这个问题并提醒你:要么处理这个异常,要么就在异常说明中表明此方法将产生异常。(自顶向下强制执行的异常说明机制)你可以声明方法将抛出异常,实际上却不抛出。

Exception 是与编程有关的所有异常类的基类,它继承Throwable. printStackTrace();fillInStackTrace();如果你只是把当前异常对象重新抛出,那么 printStackTrace()方法显示的将是原来异常抛出点的调用栈信息,而非重新抛出点的信息。而要更这个信息,你可以调用 fillInStackTrace()方法,这将返回一个Throwable对象,它是通过把当前调用栈信息填入原来那个异常对象而建立的。你有可能会在捕获异常之后抛出另一个异常。这么做的话,将得到类似使用fillInStackTrace()的效果。

Throwable这个Java类被用来表示任何可以作为异常被抛出的类。Throwable对象可分为两种类型(指从Throwable继承而得到的类型): Error用来表示你不用关心的编译期和系统错误(除了特殊情况);Exception是可以被抛出的基本类型,在Java类库、用户方法以及运行事故障中都可能抛出Exception型异常。所以Java程序员关心的主要是Exception.

Java在什么情况下才能用到finally呢?
当你要把除内存之外的资源恢复到它们的初始状态时,就要用到finally子句。这种需要清理的资源包括:已经打开的文件或网络连接,你在屏幕上画的图形,甚至可以是外部世界的某个开关。

finally子句保证不管是否抛出异常以及抛出的异常时候被捕获,都能保finally中的语句都能执行。当涉及到break和continue时,finally子句也会得到执行

finally子句导致的异常丢失,在jdk1.5和1.6中是否还存在呢?YES!
package com.ufida.orders.agents.goods.rp;

public class ExceptionTest {
     class AException extends Exception{}
     class BException extends Exception{}
     public static void main(String[] args) throws AException, BException{
          ExceptionTest et = new ExceptionTest();
          try{
               throw et.new BException();
          }finally{
               throw et.new AException();
          }
     }
}
Exception in thread "main" com.ufida.orders.agents.goods.rp.ExceptionTest$AException
at com.ufida.orders.agents.goods.rp.ExceptionTest.main(ExceptionTest.java:11)
分享到:
评论

相关推荐

    java异常机制小结

    Java 异常机制小结 Java 异常机制是 Java 语言中一个非常重要的方面,也是程序设计的一大难点。Java 语言在设计的当初就考虑到异常处理的框架的方案,使得所有的异常都可以用一个类型来表示,不同类型的异常对应...

    在静态编译器中实现Java异常机制的算法.pdf

    在静态编译器中实现Java异常机制的算法 Java 异常机制是 Java 语言中的一种重要机制,用于处理程序中的异常情况。在静态编译器中实现 Java 异常机制可以提高 Java 程序的执行效率和可靠性。下面将对在静态编译器中...

    Java异常机制.txt

    ### Java异常机制详解 #### 一、Java异常机制概述 Java异常处理机制是Java语言的一个重要组成部分,用于处理程序在运行过程中可能出现的各种错误情况。它能够帮助开发者更好地控制程序流,确保程序即使遇到异常也...

    运用JAVA异常机制分析安卓应用程序崩溃 (1).pdf

    【JAVA异常机制与安卓应用程序崩溃分析】 JAVA异常机制是JAVA编程中的重要组成部分,它主要用于处理程序运行时出现的错误情况。当JAVA代码中发生异常时,程序会立即停止当前流程,转而寻找合适的异常处理代码,这个...

    java 异常机制

    Java异常机制是Java语言中用于处理程序运行时发生的错误的一种机制。它为错误提供了对象化的处理方式,使得程序可以更加健壮、易于维护。异常处理的核心在于能够使程序在遇到错误时不会直接崩溃,而是可以执行一段...

    java异常机制处理

    Java异常处理是编程中至关重要的一个环节,它用于在程序执行过程中捕获并处理错误情况。异常机制使得程序能够优雅地处理错误,而不是因为意外情况而突然终止。在这个例子中,我们将探讨如何自定义异常以及如何在Java...

    Java异常是Java提供的一种识别及响应错误的一致性机制,Java异常机制可以使程序中异常处理代码和正常业务代码分离,保证程序

    异常机制使得异常处理代码与正常的业务逻辑得以分离,从而提高代码的可读性和维护性。 **Java异常架构** Java异常是基于`Throwable`类构建的,它是所有异常和错误的根类。`Throwable`有两个主要的子类:`Error`和`...

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

    通过实现本文提出的Java异常机制的静态编译算法,Open64编译器可以正确编译Java程序。 栈展开是被编译器和Java虚拟机普遍使用的一种实现异常处理机制的方法。本文针对传统的栈展开算法中存在的不足,提出了一种改进的...

    深入理解java异常(异常中的Error+异常中的Exception+检查异常+运行时异常+异常处理+throws关键字等)

    Java 异常机制详解 Java 异常机制是 Java 语言中的一种错误处理机制,它可以帮助开发者捕获和处理程序运行时的错误和异常。Java 异常机制包括 Error、Exception、检查异常、运行时异常、异常处理和 throws 关键字等...

    14.java异常处理机制.zip

    14.java异常处理机制.zip14.java异常处理机制.zip14.java异常处理机制.zip14.java异常处理机制.zip14.java异常处理机制.zip14.java异常处理机制.zip14.java异常处理机制.zip14.java异常处理机制.zip14.java异常处理...

    Java异常学习资料

    这份“Java异常学习资料”包含了丰富的资源,帮助你深入理解Java异常机制,提升代码质量。 1. **异常概述** Java异常是一种在程序执行期间发生的错误或不正常情况,它可以是编译时错误,也可以是运行时错误。Java...

    Java 常用类解析:java异常机制,异常栈,异常处理方式,异常链,异常丢失详解

    Java 异常机制详解 Java 异常机制是 Java 语言中的一种错误处理机制,它允许开发者在程序中捕获和处理异常。异常机制的主要组件包括 Throwable、Error 和 Exception。 1. Throwable Throwable 是 Java 语言中最...

    java异常机制分析

    Java异常机制是Java编程语言中一个关键特性,它允许程序员优雅地处理程序运行时可能出现的错误情况,确保程序的稳定性和健壮性。异常(Exception)是程序执行过程中发生的问题,通常是由非法操作或者不可预见的情况...

    java内存机制及异常处理

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

    浅析JAVA异常处理机制.pdf

    ### 浅析JAVA异常处理机制 #### 一、Java异常处理机制概述 异常处理是Java语言中的一个重要机制,它能够确保程序在遇到不可预料的情况时仍能维持稳定运行。异常处理主要包括三个方面:捕获异常、控制程序流程以及...

    利用Java异常机制实现模拟借书系统

    【Java异常机制】Java异常机制是Java编程中用于处理程序运行时可能出现错误的一种方式。异常是一种特殊的对象,代表了程序运行过程中的不正常状态。在Java中,异常分为两种类型:Error和Exception。Error通常表示...

    java第06章.异常机制.pdf

    自定义异常是Java异常机制中的一个重要组成部分,开发者可以根据需要定义新的异常类,继承自Exception或其子类,然后在代码中抛出并处理。异常链是处理异常的一种方式,指的是在一个异常处理的过程中,创建一个新的...

    深入理解java异常处理机制

    ### 深入理解Java异常处理机制 #### 引言 异常处理机制是任何现代编程语言不可或缺的一部分,尤其是在像Java这样的面向对象的语言中更是如此。Java的异常处理机制旨在帮助开发者编写更健壮、更易于维护的代码。...

Global site tag (gtag.js) - Google Analytics