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

java 异常的特殊的典型使用你知道吗?

阅读更多
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异常体系结构是Java语言的重要组成部分,它负责处理程序执行过程中出现的错误情况。在Java中,异常由Throwable类及其子类构成。Throwable是所有异常的顶层父类,它有两个直接子类:Error和Exception。Error类...

    java常见异常总结

    为了更好地理解和处理这些异常,本文将详细介绍几种常见的Java异常类型及其处理方法。 #### 1. `java.lang.NullPointerException` - **异常概述**:`NullPointerException`是Java中最常见的运行时异常之一,它发生...

    java异常 各种异常

    根据给定文件的信息,我们可以提炼出关于Java异常处理的一些关键知识点。尽管提供的内容与异常处理直接相关的部分较少,但基于标题、描述以及部分上下文,我们可以深入探讨Java异常处理的相关概念。 ### Java异常...

    java throw抛出异常实例二

    总的来说,`throw`关键字是Java异常处理机制的重要组成部分,它使得我们可以优雅地处理程序中的错误和异常情况,确保程序的健壮性和稳定性。通过对`ThrowException_02.java`的深入分析,我们可以更好地理解`throw`的...

    Java编程技巧典型案例解析

    1. **异常处理**:Java异常处理是程序健壮性的重要组成部分,通常涉及try-catch-finally语句块。通过分析源码,我们可以学习如何有效地捕获和处理运行时错误,避免程序因未预期情况而崩溃。 2. **多线程编程**:...

    Java异常处理机制及应用.pdf

    Java 异常处理原则是指在处理异常时需要遵守的一些基本原则,如尽量少地抛出异常、合理地使用 finally 块、避免 catch-all 异常、使用多 catch 块等。 五、Java 异常处理机制的应用 Java 异常处理机制的应用非常...

    java中常见的异常类型

    - **描述**:`Exception`是所有异常的父类,当不知道具体异常类型但确定某个操作可能会引发异常时,可以将其定义为`Exception`类型。 - **示例**:在处理网络请求时,可能不确定具体的异常类型,可以统一处理为`...

    Java异常与错误处理中英文翻译

    ### Java异常与错误处理 #### 引言 Java设计的核心理念之一是“结构不佳的代码将不能运行”,这意味着尽可能在编译阶段捕获错误,确保代码的健壮性与可靠性。然而,即使编译器再强大,也无法检测出所有潜在的运行...

    java数组基础与典型应用

    ### Java数组基础与典型应用详解 #### 一、数组的概念及基本使用 数组是Java中最基本的数据结构之一,用于存储固定大小的同类型元素集合。它允许程序员在单个变量中存储多个相同类型的数据项,这极大地提高了数据...

    你必须知道的261个java语言问题

    《你必须知道的261个Java语言问题》以问答的形式组织内容,讨论了学习或使用Java语言的过程中经常遇到的一些问题。这些问题均是在经过充分调研的基础上,从实际应用中总结出来的,是作者和众多Java开发者的经验总结...

    java开发典型模块大全

    Java开发典型模块大全是针对Java开发者的一份宝贵资源,它涵盖了Java编程中多个核心和重要的模块,旨在提供全面、详实的源码示例和实践指导。这份资源可以帮助开发者深入理解Java技术体系,提升开发效率和代码质量。...

    《Java开发典型模块大全》光盘源码

    《Java开发典型模块大全》是一本深度探讨Java编程技术的书籍,其光盘源码包含了大量的实例和模块,旨在帮助读者深入理解并掌握Java开发的关键技能。书籍的源码分部上传,使得学习者可以逐步下载和研究,避免一次性...

    Java开发典型模块大全源代码

    Java开发典型模块大全源代码是针对Java程序员的一份宝贵资源,涵盖了从基础到高级的多个重要模块。这个压缩包中的源代码旨在帮助开发者理解和实践Java编程中的关键概念和技术。以下是对这些模块的详细阐述: 1. **...

    java 数字格式转换异常(NumberFornatException)

    1. **使用`Integer.parseInt()`或`Integer.valueOf()`**:当你尝试将一个字符串转换为整数,但该字符串包含非数字字符或者超出整数范围的数值时,会抛出此异常。例如,`Integer.parseInt("abc")`或`Integer.parseInt...

    JAVA开发典型模块大全.rar

    4. **异常处理**:Java异常处理允许程序在遇到错误时优雅地恢复,通过try-catch-finally语句块进行捕获和处理异常。 5. **输入输出流**:Java的I/O流系统支持读写文件、网络通信和其他数据源。理解流的概念和不同的...

    《Java开发典型模块大全》光盘

    《Java开发典型模块大全》是一本深入探讨Java编程实践的资源集合,包含了20个精心设计的模块案例,旨在帮助开发者提升技能,理解和掌握在实际项目中常用的Java开发技术。这个光盘提供的源代码是学习和参考的重要资料...

    Java典型模块与项目实战大全1-10章 源码

    《Java典型模块与项目实战大全》是一套深度学习Java编程技术的资源集合,涵盖了从基础到进阶的各个层面。这份资源包含1-10章的源码,为学习者提供了丰富的实践素材,有助于深入理解和掌握Java编程的核心概念和技术。...

    Java开发典型模块大全(仅含程序源码)-20个Java项目

    Java开发典型模块大全,这是一份专为Java开发者准备的宝贵资源,包含了20个不同类型的Java项目,每个项目都提供了完整的程序源码,旨在帮助开发者深入理解和掌握Java编程的各种核心概念和技术。以下是对这些模块及其...

    Java异常处理-异常处理的方式2:throws

    Java异常处理机制是编程中必不可少的部分,用于处理程序运行时可能出现的错误情况。在Java中,异常处理主要有两种方式:捕获异常(try-catch-finally)和声明抛出异常(throws)。本篇主要讨论第二种方式——声明抛...

Global site tag (gtag.js) - Google Analytics