
Java语言程序设计第五章异常Java
Java语言程序设计 第五章 异常

5-1异常1、什么是异常2、异常的处理(try-catch-finally)3、异常的抛出(throw、throws)4、异常的分类5、自定义异常
5-1 异常 1、什么是异常 2、异常的处理( try-catch-finally) 3、异常的抛出(throw、throws) 4、异常的分类 5、自定义异常

现实世界中的异常什么是异常?中华人民共租证居民身份0904中华人民共和国居民身份证
现实世界中的异常 什么是异常?

程序中的异常正常情况:一个简单importjava.util.Scanner;请输入两个数:的除法器publicclassDiv100举例:publicstaticvoidmain(Stringargs)20Scanner reader=new Scanner(System.in);从控制台5System.out.println("请输入两个数:");输入两个谢谢使用!inta,b,c;数字,计不正常情况1:a=reader.nextlnt();算出这两输入:100和ab=reader.nextint();个数字的java.util.InputMismatchc=a/b;Exception商。System.out.println(c);System.out.println("谢谢使用!");不正常情况2:输入:100和0java.lang.ArithmeticException:/byzero
程序中的异常 一个简单 的除法器 举例: 从控制台 输入两个 数字,计 算出这两 个数字的 商。 import java.util.Scanner; public class Div { public static void main(String[] args) { Scanner reader=new Scanner(System.in); System.out.println("请输入两个数:"); int a,b,c; a=reader.nextInt(); b=reader.nextInt(); c=a/b; System.out.println(c); System.out.println("谢谢使用!"); } } 正常情况: 请输入两个数: 100 20 5 谢谢使用! 不正常情况1: 输入:100和a java.util.InputMismatch Exception 不正常情况2: 输入:100和0 java.lang.ArithmeticExc eption: / by zero

异常的概念异常是程序在执行时发生的不正常事件,它会打断程序的正常运行。产生异常!程序中断运行程序正常运行
异常是程序在执行时发生的不正常事件,它会打断程序的正常运行。 程序正常运行 产生异常! 程序中断运行 异常的概念

Java异常处理机制在程序代码执行时出现异常后,会按照预先制定的处理方案对异常进行处理,异常处理完成后,程序会继续运行下去。程序中预先制定的处理方案对异常进行处理对异常进行处理处理完毕,程序继续运行产生异常!程序正常运行
Java异常处理机制 在程序代码执行时出现异常后,会按照预先制定的处理方案对异 常进行处理,异常处理完成后,程序会继续运行下去。 程序中预先制定的处理 方案对异常进行处理 程序正常运行 产生异常! 对异常进行处理 处理完毕,程序继续运行

异常处理Java异常处理的五虎上将:try、catch、finally、throw、throws5个关键字。有可能会出现异常的代码一定要放到try代码块中E不管有没有异常捕获和处理异常finallycatch都要执行的代码throwthrows在方法中手动抛出异常声明方法抛出异常
异常处理 Java异常处理的五虎上将:try、catch、finally、throw、throws 5个关键字。 在方法中手动抛出异常 声明方法抛出异常 try finally catch throw throws 有可能会出现异常的代码一定要放到try代码块中 不管有没有异常 都要执行的代码 捕获和处理异常

异常处理与抛出的使用形式tryttrytI tryttryt异常处理的形式:1try-catch结构11catch(...)catch(...)catchcatch1try-catch-finally结构T人1◎异常抛出0了catch(...)catch(...)finally★publicvoid m10K111throw exception;catch(...)catch(...)1)finallypublic void m20 throws Exceptiont1
异常处理与抛出的使用形式 异常处理的形式: try-catch结构 try-catch-finally结构 异常抛出 public void m1() { throw exception; } public void m2() throws Exception { .} try{ . } catch { . } try{ . } catch(.) { . } catch(.) { . } catch(.) { . } try{ . } catch { . } finally { . } try{ . } catch(.) { . } catch(.) { . } catch(.) { . } finally { . }

try-catch块在try-catch块中,try语句块中代码执行时会发生以下3种情况之一:try一、无异常发生try语句块中代码catch正常执行完毕,没有任何异常,catch语句块的代码不会被执行try-catch语句块之后的程序代码
try-catch块 在try-catch块中,try语句块中代码执行时会发生以下3种情况之一: try catch try-catch 语句块 之后的程序代码 一、无异常发生 try语句块中代码 正常执行完毕,没有任何异常, catch语句块的代码不会被执行

try-catch块二、有异常,被捕获引发异常trytry语句块代码执行时产生异常该异常跟catch中声明的异常catch异常类型相符合类型相符合,进入catchtry语句块剩余的代码将被忽略catch语句块的代码将被执行。try-catch后try-catch后续代码正常执行。程序代码
try-catch块 二、有异常,被捕获 try catch try- catch 后 程序代码 try语句块代码执行时产生异常, 该异常跟catch中声明的异常 类型相符合, try语句块剩余的代码将被忽略, catch语句块的代码将被执行。 try-catch后续代码正常执行。 异常 引发 异常类型相符合 进入catch