运行时异常可以不捕获,即使一段代码不可能抛出这个RuntimeException,你也可以在任何时候任何地点抛出这个RuntimeException,因此我建议RuntimeException不抛也不捕获,统一交给处理程序最后处理(调用者一般不会知道一个方法会抛出哪些RuntimeException的,因此由程序统一处理)
重写方法时,不能声明抛出和父类方法异常不兼容的异常。如父类抛出一个IOException,这时子类方法可以抛出IOException或Exception(不然里氏替换原则不满足),也可以不声明抛出异常。
编译期异常要显式捕获或往上抛(方法里要显式声明抛转这个异常)。
代码里尽量不捕获异常,但要声明抛出异常。捕获异常的工作尽量交给调用者来处理。
try catch finally 不要在finally中return, finally一般做些释放资源的事情。
如果方法在try 或 catch中返回值的话,即使这个值在finally中做了更改,这个更改值无效(但是在eclipse debug中能看到值变了,但方法返回的结果却是try(catch)中的值,除非你在finally中直接return,但是不建议这么做。因此finally中最好不要有return(eclipse这时会提示警告!)
java思想4edition中提到:吞没异常的两种可能,1: finally中也抛出了异常,这样try中抛出的异常就会被吞没;2:finally中有return语句。
第一种情况,如在finally中关闭网络连接,释放文件资源等,这时的异常一定要自己捕获,不能再往外抛了,否则try中的异常就会被吞了。
java中部分Error是可以捕获的,如StackOverflowError, 而且捕获后vm可以继续工作,StackOverflowError也可象Exception一样一级一级往上抛。但是有的Error不会被捕获,如OutOfMemeoryError, 此时vm也会终止。more debate see http://stackoverflow.com/questions/352780/when-to-catch-java-lang-error
分享到:
相关推荐
Java 异常处理习题 Java 异常处理是 Java 编程语言中的一种重要机制,用于处理程序在运行时可能出现的错误或异常情况。下面是关于 Java 异常处理的习题和知识点总结: 一、Java 异常处理关键字 * Java 中用来抛出...
Java异常处理是编程中至关重要的一个环节,它确保了程序的稳定性和健壮性。Java异常是程序在运行过程中遇到的错误,它们可以是编译时错误,也可以是运行时错误。Java通过一套完整的异常处理机制来管理和修复这些错误...
本文将对C++和Java两种语言的异常处理机制进行深入的比较和分析,探讨它们的相似之处以及不同之处,以帮助开发者更好地理解和应用这两种语言。 首先,异常处理的基本目的是捕获并处理运行时错误,这些错误通常包括...
Java 异常详解 Java 异常是指在程序运行中出现的违背指定正常流向的事件。异常可以分为两大类:-checked 异常和 unchecked 异常。Checked 异常必须在编译时捕捉并处理,而 unchecked 异常可以在编译时忽略,但是在...
内容概要:本文详细介绍了Java异常处理机制,包括异常的基本概念、异常架构(如 Throwable、Error、Exception)、异常关键字(如 try、catch、finally、throw、throws)及其使用方法。此外,文章还涵盖了常见的Java...
Java 异常机制的基础知识包括异常的基础概念、异常的分类、异常的对象、异常的来源、异常的处理等几个方面。 一、Java 异常的基础知识 异常是程序中的一些错误,但并不是所有的错误都是异常,并且错误有时候是可以...
Java异常处理是Java编程语言中的一个关键特性,它允许程序员优雅地处理程序运行时出现的错误情况,确保程序的稳定性和可靠性。这份“Java异常学习资料”包含了丰富的资源,帮助你深入理解Java异常机制,提升代码质量...
Java 异常处理论文:JAVA 异常处理的分析与研究 Java 异常处理是 Java 语言的一大特色,该文在介绍 Java 语言的异常处理技术的基础上,提出了异常处理的设计原则,从而为 Java 的程序设计实现提供技术上的借鉴。 ...
java异常练习题,北大青鸟学士后课后练习,主要是异常处理的小测验
Java异常处理是编程中至关重要的一个环节,它关乎到程序的稳定性和健壮性。这份8页的PDF文档,"Java异常处理的误区和经验总结",无疑为开发者提供了宝贵的实践指导。以下是对该主题的一些关键知识点的详细阐述: 1....
Java异常处理是编程中至关重要的一个环节,它关乎程序的健壮性和稳定性。在Java中,异常(Exception)被用来表示程序运行时发生的错误或不正常情况。异常并不等同于错误,它是程序设计的一部分,允许我们优雅地处理...
Java异常处理是编程中至关重要的一个环节,它确保了程序在遇到错误情况时能够优雅地进行错误恢复或者至少提供有用的错误信息。Java异常是程序在运行时遇到的问题,例如数组越界、空指针异常、文件未找到等,这些问题...
Java异常处理和输入输出流技术在Java编程中扮演着至关重要的角色,特别是在开发涉及文件操作的应用程序时。在这个实验报告中,学生被要求设计一个简单的文本编辑器,该编辑器需要具备多文件处理、文件创建、浏览、...
Java异常处理是编程中至关重要的一个环节,它允许开发者优雅地处理程序运行时可能出现的错误,确保程序的健壮性和稳定性。Java中的异常处理机制基于一个独特的概念——异常(Exception),这是一种表示程序运行中...
Java异常体系结构是Java语言的重要组成部分,它负责处理程序执行过程中出现的错误情况。在Java中,异常由Throwable类及其子类构成。Throwable是所有异常的顶层父类,它有两个直接子类:Error和Exception。Error类...
Java异常处理是编程中至关重要的一个环节,它确保了程序在遇到错误时能够优雅地运行,而不是突然崩溃。本篇文章将深入探讨Java异常处理的概念、机制以及如何通过代码实例进行有效的异常管理。 Java异常处理的核心...
这个主题,"Java异常处理体系",涉及到Java如何优雅地处理程序运行时的异常,确保程序的健壮性和稳定性。这篇博文链接(已提供但无法直接访问)可能详细解释了Java异常处理的基本概念、机制以及最佳实践。 Java异常...
### 浅析JAVA异常处理机制 #### 一、Java异常处理机制概述 异常处理是Java语言中的一个重要机制,它能够确保程序在遇到不可预料的情况时仍能维持稳定运行。异常处理主要包括三个方面:捕获异常、控制程序流程以及...
Java异常处理是编程过程中的重要环节,它有助于增强程序的健壮性和稳定性。在这个全面的教程中,我们将深入探讨Java异常的基本概念、分类、处理机制以及最佳实践。 首先,Java异常是程序运行时发生的错误,它中断了...
### Java异常详解 #### 一、异常的基本概念 在Java编程中,“异常”是指程序运行过程中发生的非预期事件,这些事件可能会导致程序无法正常执行。Java中的异常处理机制旨在帮助开发者更好地控制和处理这些异常情况...