package com.easyway.commons.ispace.dev.oop.exceptions;
import java.io.IOException;
/**
* 异常的典型使用
* @author longgangbai
* @date 2010-5-13
* @version 1.0
* @since JDK6.0
*/
public class JavaException {
/**
* (1)当try代码块后面有多个catch代码块,java虚拟机会把实际抛出的异常对象依次
* 和各个catch代码块生命的异常类型匹配,如果异常对象为某个异常类型或者其子
* 类的实例,就执行这个catch代码块,而不会在执行其他的catch代码块.(备注必须注意
* 执行异常的先后顺序)
* (2) finally:一般用于执行必须执行的代码。但是在特殊情况可能不被执行。先执行
* 了用于终止程序的System.exit()方法或者断电。
* (3) return 语句用于退出本方法。在执行try或者catch代码块中的return语句中,
* 如果有finally代码块,会先执行finally代码块。
*/
public void method(){
try{
throw new IOException("out of money ");
}catch(IOException e)
{
System.out.println("IOException ="+e);
} catch(Exception e)
{
System.out.println("Exception ="+e);
}
}
public int methodA(int money)throws IOException {
if(money<0)
{
throw new IOException("out of money ");
}
return money;
}
/**
* fially执行完毕才返回的return的值
* @param money
* @return
*/
public int methodB(int money) {
try {
System.out.println("begin");
int result=methodA(money);
return result;
} catch (IOException e) {
System.out.println("exectpion "+e.getMessage());
return -100;
}finally{
System.out.println("methodB finally ");
}
}
/**
* finally语句不可改变的返回值的数据
*/
public int methodC(int money) {
try {
return money;
}finally{
money=-1;
}
}
/**
* 备注:由于在返回return的值之前执行finally语句,故先执行finally中 的return 语句
* @param money
* @return
*/
@SuppressWarnings("finally")
public int methodD(int money) {
try {
return money;
}finally{
return -1;
}
}
/**
* 造成异常丢失的情况,必须考虑:
* 发生异常时,先执行异常捕获,然后执行finally语句,将异常丢失了。
* @param money
* @return
*/
@SuppressWarnings("finally")
public int methodE(int money) {
try {
System.out.println("begin");
int result=methodA(money);
return result;
} catch (IOException e) {
System.out.println("exectpion "+e.getMessage());
}finally{
System.out.println("methodB finally ");
return -100;
}
}
public static void main(String[] args) {
JavaException e=new JavaException();
System.out.println(e.methodE(-1));
}
}
分享到:
相关推荐
Java编程技巧典型案例解析 在Java编程领域,掌握高效、实用的编程技巧对于提升代码质量、优化性能以及提高开发效率至关重要。本资料集旨在通过一系列典型示例,深入剖析Java编程中的常见问题及其解决策略,帮助...
Java异常体系结构是Java语言的重要组成部分,它负责处理程序执行过程中出现的错误情况。在Java中,异常由Throwable类及其子类构成。Throwable是所有异常的顶层父类,它有两个直接子类:Error和Exception。Error类...
为了更好地理解和处理这些异常,本文将详细介绍几种常见的Java异常类型及其处理方法。 #### 1. `java.lang.NullPointerException` - **异常概述**:`NullPointerException`是Java中最常见的运行时异常之一,它发生...
根据给定文件的信息,我们可以提炼出关于Java异常处理的一些关键知识点。尽管提供的内容与异常处理直接相关的部分较少,但基于标题、描述以及部分上下文,我们可以深入探讨Java异常处理的相关概念。 ### Java异常...
总的来说,`throw`关键字是Java异常处理机制的重要组成部分,它使得我们可以优雅地处理程序中的错误和异常情况,确保程序的健壮性和稳定性。通过对`ThrowException_02.java`的深入分析,我们可以更好地理解`throw`的...
1. **异常处理**:Java异常处理是程序健壮性的重要组成部分,通常涉及try-catch-finally语句块。通过分析源码,我们可以学习如何有效地捕获和处理运行时错误,避免程序因未预期情况而崩溃。 2. **多线程编程**:...
Java 异常处理原则是指在处理异常时需要遵守的一些基本原则,如尽量少地抛出异常、合理地使用 finally 块、避免 catch-all 异常、使用多 catch 块等。 五、Java 异常处理机制的应用 Java 异常处理机制的应用非常...
- **描述**:`Exception`是所有异常的父类,当不知道具体异常类型但确定某个操作可能会引发异常时,可以将其定义为`Exception`类型。 - **示例**:在处理网络请求时,可能不确定具体的异常类型,可以统一处理为`...
### Java异常与错误处理 #### 引言 Java设计的核心理念之一是“结构不佳的代码将不能运行”,这意味着尽可能在编译阶段捕获错误,确保代码的健壮性与可靠性。然而,即使编译器再强大,也无法检测出所有潜在的运行...
### Java数组基础与典型应用详解 #### 一、数组的概念及基本使用 数组是Java中最基本的数据结构之一,用于存储固定大小的同类型元素集合。它允许程序员在单个变量中存储多个相同类型的数据项,这极大地提高了数据...
《你必须知道的261个Java语言问题》以问答的形式组织内容,讨论了学习或使用Java语言的过程中经常遇到的一些问题。这些问题均是在经过充分调研的基础上,从实际应用中总结出来的,是作者和众多Java开发者的经验总结...
Java开发典型模块大全是针对Java开发者的一份宝贵资源,它涵盖了Java编程中多个核心和重要的模块,旨在提供全面、详实的源码示例和实践指导。这份资源可以帮助开发者深入理解Java技术体系,提升开发效率和代码质量。...
《Java开发典型模块大全》是一本深度探讨Java编程技术的书籍,其光盘源码包含了大量的实例和模块,旨在帮助读者深入理解并掌握Java开发的关键技能。书籍的源码分部上传,使得学习者可以逐步下载和研究,避免一次性...
Java开发典型模块大全源代码是针对Java程序员的一份宝贵资源,涵盖了从基础到高级的多个重要模块。这个压缩包中的源代码旨在帮助开发者理解和实践Java编程中的关键概念和技术。以下是对这些模块的详细阐述: 1. **...
1. **使用`Integer.parseInt()`或`Integer.valueOf()`**:当你尝试将一个字符串转换为整数,但该字符串包含非数字字符或者超出整数范围的数值时,会抛出此异常。例如,`Integer.parseInt("abc")`或`Integer.parseInt...
4. **异常处理**:Java异常处理允许程序在遇到错误时优雅地恢复,通过try-catch-finally语句块进行捕获和处理异常。 5. **输入输出流**:Java的I/O流系统支持读写文件、网络通信和其他数据源。理解流的概念和不同的...
《Java开发典型模块大全》是一本深入探讨Java编程实践的资源集合,包含了20个精心设计的模块案例,旨在帮助开发者提升技能,理解和掌握在实际项目中常用的Java开发技术。这个光盘提供的源代码是学习和参考的重要资料...
《Java典型模块与项目实战大全》是一套深度学习Java编程技术的资源集合,涵盖了从基础到进阶的各个层面。这份资源包含1-10章的源码,为学习者提供了丰富的实践素材,有助于深入理解和掌握Java编程的核心概念和技术。...
Java开发典型模块大全,这是一份专为Java开发者准备的宝贵资源,包含了20个不同类型的Java项目,每个项目都提供了完整的程序源码,旨在帮助开发者深入理解和掌握Java编程的各种核心概念和技术。以下是对这些模块及其...
Java异常处理机制是编程中必不可少的部分,用于处理程序运行时可能出现的错误情况。在Java中,异常处理主要有两种方式:捕获异常(try-catch-finally)和声明抛出异常(throws)。本篇主要讨论第二种方式——声明抛...