Java入门——异常的捕获与处理

Java入门——异常的捕获与处理


在没有异常处理的语言中,通常需要大量的判断语句,配合所想到的错误来捕获程序中所有可能发生的错误。充分利用Java的异常处理机制,以增进程序的稳定性和效率。


Java的异常处理机制

  1. 一旦产生异常,则首先会产生一个异常类的实例化对象。
  2. 在try语句中对此异常对象进行捕获。
  3. 产生的异常对象与catch语句中的各个异常类型进行匹配,如果匹配成功,则执行catch语句中的代码。
  4. finaly是异常的统一出口,一定会执行。

所有的子类实例全部可由父类接收,利用向上转型的概念,所有的异常对象都可以使用Exception类接收


throws关键字

  throws:使用throws声明的方法表示此方法不处理异常,而交给方法的调用处进行处理。

  在主方法中不要使用throws关键字。


throw关键字

  可以直接使用throw关键字人为的抛出一个异常,抛出时,直接抛出异常类的实例化对象即可。


范例:throw与throws的应用

设计一个相除的方法,要求必须打印“计算开始”信息,“计算结束”信息,如果有异常,则肯定调用被调用处处理。

 1 package Sep18;
 2 /*设计一个相除的方法,要求必须打印“计算开始”信息,“计算结束”信息,如果有异常,则肯定调用被调用处处理。
 3  */
 4 public class TrowDemo02 {
 5     public static void main(String args[]){
 6         Math m=new Math();
 7         try{
 8             System.out.println("除法操作:"+m.div(10, 0));
 9         }catch(Exception e){
10             System.out.println("异常产生:"+e);//产生异常时执行。
11         }
12     }
13 }
14 class Math{
15     public int div(int i,int j) throws Exception{//方法可以不处理异常,直接抛出
16         System.out.println("****计算开始****");
17         int temp=0;
18         try{
19             temp=i/j;
20             }catch(Exception e){//捕获异常
21                 throw e;//把异常结构交给被调用处
22             }finally{
23                 System.out.println("****计算结束****");
24             }
25         return temp;
26     }
27 }
****计算开始****
****计算结束****
异常产生:java.lang.ArithmeticException: / by zero

Exception类与RuntimeException类

  RuntimeException类是Exception类的一个子类,但是可以直接throws,而不用try---catch---抛出,但是最好还是正常捕获。

时间: 2024-10-09 00:55:42

Java入门——异常的捕获与处理的相关文章

[转载]Java中异常的捕获顺序(多个catch)

http://blog.sina.com.cn/s/blog_6b022bc60101cdbv.html [转载]Java中异常的捕获顺序(多个catch) (2012-11-05 09:47:28) 转载▼ 标签: 转载 分类: 转载 原文地址:Java中异常的捕获顺序(多个catch)作者:leesa Java代码 import java.io.IOException; public class ExceptionTryCatchTest { public void doSomething(

java之异常的捕获及处理

在java中程序的错误主要是语法错误和语义错误(也就是逻辑错误). java中异常处理语句的格式: try{ //有可能出现异常的语句 }catch(异常类 异常对象){ //编写异常的处理语句 }catch(异常类 异常对象){ //编写异常的处理语句 }finally{ 一定会运行的代码: } 在java的异常结构中,有两个最常用的类,分别是Exception和Error,都是Throwable的子类. Exception:一般表示的是程序中出现的问题,可以直接使用try....catch处

JAVA学习-异常的捕获及处理

1.认识异常(了解) 异常指的是导致程序中断的一种指令流.那么下面先通过两个程序来比较程序出现异常与没有出现异常的区别. 范例:程序不出现异常 public class TestDemo { public static void main(String args[]) { System.out.println("1.除法计算开始.") ; System.out.println("2.除法计算:" + (10 / 2)) ; System.out.println(&q

Java中异常的捕获顺序(多个catch)(

Java代码 import java.io.IOException; public class ExceptionTryCatchTest { public void doSomething() throws IOException{ System.out.println("do somthing"); } public static void main(String[] args){ ExceptionTryCatchTest et = new ExceptionTryCatchTe

Java中多个异常的捕获顺序(多个catch)

Java代码 import java.io.IOException; public class ExceptionTryCatchTest { public void doSomething() throws IOException{ System.out.println("do somthing"); } public static void main(String[] args){ ExceptionTryCatchTest etct = new ExceptionTryCatch

Java异常的捕获和处理(一)

一.异常的捕获和处理 KEY WORDS : try, catch, finally, throw, throws. (一)syntax(代码) try{ //需要运行的代码 }catch(异常类型 异常变量名){ //异常处理代码 }finally{ //异常发生,方法返回之前,需要执行的代码 } (二)不同语句块的特点 1.try (1)表示尝试运行代码,受异常监控. (2)当此语句块代码发生异常时,抛出异常对象.//不太明白此处的抛出对象是什么意思? 2.catch (1)当try语句块中

java中异常类与类别

异常类的层次结构: 在 Java 中,所有的异常都有一个共同的祖先 Throwable(可抛出).Throwable 指定代码中可用异常传播机制通过 Java 应用程序传输的任何问题的共性,它们都在java.lang包下面. Error类标记了严重错误,类似内存溢出,虚拟机异常,等等,是不该出现的.这些错误表示故障发生于虚拟机自身.或者发生在虚拟机试图执行应用时,如Java虚拟机运行错误(Virtual MachineError).类定义错误(NoClassDefFoundError)等.这些错

Java基础—异常

一.  Exception异常 1. 概述 异常是程序在运行时出现的错误 异常由来:问题也是现实生活中一个具体的事物,也可以通过java的类的形式进行描述.并封装成对象. 其实就是java对不正常情况进行描述后的对象体现. 2. Java的异常体系 1. 从图中可以看出Throwable下有两个子类,Error和Exception 对于严重的问题,java通过Error类进行描述.对Error类一般不编写针对性的代码对其进行处理. 对于非严重的,java通过Exception类进行描述.对于Ex

第十九节(异常的基本概念, 异常的分类, 异常的捕获和处理,自定义异常,方法覆盖与异常)

1: Java 异常处理 异常是程序中的一些错误,但并不是所有的错误都是异常,并且错误有时候是可以避免的. 异常发生的原因有很多,通常包含以下几大类: 1. 用户输入了非法数据. 2. 要打开的文件不存在. 网络通信时连接中断,或者JVM内存溢出.这些异常有的是因为用户错误引起,有的是程序错误引起的,还有其它一些是因为物理错误引起的. 要理解Java异常处理是如何工作的,要掌握以下三种类型的异常: 检查性异常:最具代表的检查性异常是用户错误或问题引起的异常,这是程序员无法预见的.例如要打开一个不