第四讲Java异常处理

合集下载

java异常处理方法及流程

java异常处理方法及流程

java异常处理方法及流程Java 异常处理方法及在 Java 编程中,异常处理是一项非常重要的技术。

通过适当的异常处理方法,可以使程序具备更好的稳定性和可读性,提高程序的健壮性。

本文将详细介绍 Java 异常处理的各个流程。

异常的基本概念异常是在程序执行期间产生的一种错误或异常情况。

Java 引入了异常处理机制来处理这些异常,以提高程序的可靠性和可维护性。

异常分为两种类型:1.受检异常(Checked Exceptions):受检异常在编译阶段必须进行处理,否则编译器将报错。

例如,IOException 是常见的受检异常。

2.非受检异常(Unchecked Exceptions):非受检异常是指不需要显式捕获或声明抛出的异常,编译器不会检查是否对其进行处理。

例如,NullPointerException 是常见的非受检异常。

异常处理的方法Java 提供了多种处理异常的方法,包括捕获异常和抛出异常。

下面分别进行介绍。

捕获异常是指通过使用try-catch语句块来捕获并处理异常。

try语句块用于包裹可能出现异常的代码,catch语句块用于捕获并处理异常。

try {// 可能抛出异常的代码块// ...} catch (ExceptionType1 e1) {// 处理异常类型1// ...} catch (ExceptionType2 e2) {// 处理异常类型2// ...} finally {// 可选的 finally 代码块,始终会被执行// ...}抛出异常当一个方法无法处理某个异常时,可以通过throw关键字手动抛出异常。

异常将会被传递给调用该方法的代码,并进一步处理。

public void someMethod() throws SomeException {if (someCondition) {throw new SomeException("Some error message");}使用异常的注意事项在使用异常处理时,需要注意以下几点:•捕获异常的顺序非常重要,应该从特定异常到一般异常的顺序进行捕获。

第4章 异常处理 - 全

第4章 异常处理 - 全
determine its size;
read-File; closeTheFile; }
每一个catch针对一种可能的错误
allocate that much memory; 每一个错误都有相应的处理办法,
并且将实现功能(事务逻辑)与 错误处理分开来
{ dosomething; }
{ dosomething; }
4.3 捕获异常

try-catch-finally语句执行流程
try 块
抛出异常
无论try块中是否抛出异 常,finally块中的语句都会 被执行。
无异常
catch 块
可以对程序的状态作统一 的管理。 finally语句对增强程序的 鲁棒性非常重要。
finally 块
try-catch-finally语句
有些问题通常不那么严重,应用程序可以自行恢复,如
运算时除数为0,数据超出应有的范围,或者欲装入的 类文件不存在等,这些问题称为异常。
Java程序能够对异常进行处理,使程序继续运行或者平
稳结束。
异常的分类

运行时异常(Runtime Exception)

在运行时被检查的异常,如除数为0、数组下标越界等。 这类异常一般由程序自身问题引起,产生比较频繁,可 由系统进行检测并处理,配有缺省的异常处理程序。 Java程序对这类异常可不做处理。

检查型异常(Checked Exception)


程序中可预知的、常常由外部问题引起的异常,如打开 文件时文件不存在、输入数据时类型不匹配等。 检查型异常如果不处理就无法通过编译,也就无法执行。 也称非运行时异常或编译时异常。
运行时异常实例

浅析Java异常处理机制及应用

浅析Java异常处理机制及应用

浅析Java异常处理机制及应用摘要:Java异常处理机制是Java编程语言中最为重要的机制之一,它可以在代码中处理各种类型的异常。

本文将对Java异常处理机制进行浅析,并从应用层面探讨一些常见的Java异常处理方法。

关键词:Java,异常处理,应用正文:一、Java异常处理机制Java异常处理机制是Java编程语言中最为重要的机制之一。

在Java语言中,异常是指一个程序运行时产生的意外情况,可以是代码中的错误,也可以是由于外部环境因素导致的错误。

Java提供了一整套异常处理机制,可以帮助开发者处理各种类型的异常。

在Java中,异常通常被定义为继承自Throwable类的任意一个子类。

常见的异常类型包括RuntimeException、IOException、ClassNotFoundException、ArithmeticException等等。

Java中异常的处理主要分为两种方式:try-catch块和throws语句。

try-catch块是一种捕捉异常的方法,其基本语法结构如下:```try {// 可能会抛出异常的代码块} catch (type1 e1) {// 处理type1类型异常的代码块} catch (type2 e2) {// 处理type2类型异常的代码块} finally {// 不管是否发生异常,都会执行的代码块}```throws语句是一种抛出异常的方法,其基本语法结构如下:```public void methodName() throws ExceptionType {// 可能会抛出异常的代码块}```二、Java异常处理的应用Java异常处理机制应用广泛,以下是应用层面探讨一些常见的Java异常处理方法。

1、基于try-catch块的异常处理try-catch块是Java中最基本的异常处理方法。

它可以在程序运行时捕捉异常,并且根据不同的异常类型采取不同的处理方法。

java程序错误类型及异常处理

java程序错误类型及异常处理

java程序错误类型及异常处理一、程序的错误类型在程序设计中,无论规模是大是小,错误总是难免的。

程序的设计很少有能够一次完成,没有错误的(不是指HelloWorld这样的程序,而是要实现一定的功能,具备一定实用价值的程序),在编程的过程中由于种种原因,总会出现这样或那样的错误,这些程序的错误就是我们常说的“Bug”,而检测并修正这些错误的方法就是“Debug”(调试)。

基本上所有的集成开发环境都提供了强大的和程序调试功能,在程序进行编译,连接,运行时,会对程序中错误进行诊断。

程序的错误可以抽象分为三类:语法错误、运行错误和逻辑错误。

1、语法错误是指由于编程中输入不符合语法规则而产生的。

程序编译就通不过,程序不能运行起来。

此类错误最简单,调试起来比较容易例如:表达式不完整、缺少必要的标点符号、关键字输入错误、数据类型不匹配、循环语句或选择语句的关键字不匹配等。

通常,编译器对程序进行编译的过程中,会把检测到的语法错误以提示的方式列举出来,又称为编译错误。

语法错误的调试,则可以由集成开发环境提供的调试功能来实现,在程序进行编译时,编译器会对程序中的语法错误进行诊断。

编译诊断的语法错误分为3中:致命错误、错误和警告。

(1)致命错误:这个错误大多是编译程序内部发生的错误,发生这类错误时,编译被迫中止,只能重新启动编译程序,但是这类错误很少发生,为了安全,编译前最好还是先保存程序。

(2)错误:这个错误通常是在编译时,语法不当所引起的。

例如:括号不匹配,变量未声明等。

产生这类错误时,编译程序会出现报错提示,我们根据提示对源程序进行修改即可。

这类错误是出现最多的。

(3)警告:是指被编译程序怀疑有错,但是不确定,有时可强行通过。

例如:没有加void声明的主函数没有返回值,double数据被转换为float类型等。

这些警告中有些会导致错误,有些可以通过。

常规解决方法:此类错误一般程序编译系统会自动提示相应的错误地点和错误原因,比如哪一行代码少了个括号等诸如此类的提示,常见的错误,看懂直接改正即可,如果是看不懂原因,可以将错误提示信息输入搜索引擎查找一下,一般都能找到具体的解决办法。

Java中的异常处理和断言机制

Java中的异常处理和断言机制

Java中的异常处理和断言机制在软件开发过程中,我们常常会遇到各种错误和异常情况。

为了保证程序的稳定性和可靠性,Java提供了异常处理和断言机制。

异常处理是一种处理异常情况的方式。

在程序执行过程中,如果出现了异常,系统会抛出相应的异常对象。

我们可以使用try-catch 语句块来捕获并处理这些异常。

try语句块是重点执行的代码块,catch语句块用于捕获并处理指定类型的异常。

如果try语句块中的代码发生了异常,系统会跳过try块中后续的代码,然后进入catch块进行异常处理。

在catch块中,我们可以根据实际需求进行处理,例如输出异常信息、记录日志、回滚事务等。

同时,Java还提供了finally块,用于定义无论是否出现异常,都需要执行的代码。

除了try-catch语句块,我们也可以使用throws关键字来声明异常。

当方法的实现可能会抛出某些异常时,我们可以使用throws关键字在方法签名中声明这些异常。

这样,在调用该方法时,我们必须要么使用try-catch语句块来捕获这些异常,要么在调用方法的上一级方法中继续使用throws关键字声明这些异常。

这种方法使得异常的处理更加灵活,可以将异常的处理逻辑推迟到调用方。

断言机制是一种用于调试和测试的机制。

断言是一种声明,用于在程序中插入一些检查语句,以确保程序的正确性。

在Java中,我们可以使用assert关键字来定义断言。

断言语句由关键字assert、一个boolean表达式和一个可选的消息组成。

当断言语句的结果为false时,系统会抛出一个AssertionError异常。

断言主要用于进行一些前提条件的检查,用于确保程序的正确性,并在出现错误时及早发现和处理。

在调试和测试阶段,我们可以开启断言功能,确保程序按照我们预期的方式执行。

而在生产环境中,我们可以关闭断言功能,从而提高程序的性能。

总之,在Java中,异常处理和断言机制是保证程序稳定性和可靠性的重要工具。

Java中的异常处理与断言

Java中的异常处理与断言

Java中的异常处理与断言在Java编程语言中,异常处理和断言是重要的概念。

异常处理能够帮助开发者在程序运行过程中捕获和处理潜在的错误,而断言则用于在程序开发过程中检查条件是否满足。

本文将详细介绍Java中的异常处理和断言的用法及相关注意事项。

一、异常处理在程序的执行过程中,可能会遇到各种各样的错误,例如输入不合法、文件不存在或者网络连接失败等。

这些错误被称为异常,并且会导致程序的中断或崩溃。

为了避免程序出现不可预料的错误,Java提供了异常处理机制。

Java异常处理机制依赖于以下关键字:try、catch和finally。

通过使用这些关键字,我们可以编写代码来捕获和处理异常。

下面是一个简单的异常处理的示例:```javatry{// 可能导致异常的代码}catch(Exception e){// 处理异常的代码}finally{// 无论是否有异常,都会执行的代码}```在上面的代码中,try块是包含可能抛出异常的代码块。

catch块用于捕获和处理异常。

finally块中的代码无论异常是否发生,都会执行。

不同的异常有不同的类型,例如ArithmeticException、NullPointerException等。

我们可以根据具体的情况来捕获和处理不同类型的异常。

例如:```javatry{// 可能导致异常的代码}catch(ArithmeticException e){// 处理算术异常的代码}catch(NullPointerException e){// 处理空指针异常的代码}catch(Exception e){// 处理其他异常的代码}```在上面的代码中,我们可以看到不同类型的异常分别由不同的catch块来捕获和处理。

最后的catch块可以用来处理未被前面的catch块捕获的异常。

二、断言断言是开发过程中用来检查条件是否满足的一种机制。

在Java中,断言通常用于验证程序是否满足预期的条件。

java异常处理

6
Try与 Try与catch
try
捕获违例的第一步是用try{… 捕获违例的第一步是用 try{…} 语句块选定捕 获违例的范围。 获违例的范围。 catch 在catch语句块中是对违例对象进行处理 catch语句块中是对违例对象进行处理 的代码
每个try 语句块可以伴随一个或多个catch 语句, 每个 try语句块可以伴随一个或多个 catch语句 , 用 于处理可能产生的不同类型的违例对象。 于处理可能产生的不同类型的违例对象 。 与其它 对象一样, 对象一样 , 可以访问一个违例对象的成员变量或 调用它的方法。 调用它的方法。 getMessage( ) 方法,用来得到有关异常事件的信 方法, 息 printStackTrace( )用来跟踪异常事件发生时执行 堆栈的内容。 堆栈的内容。
IOExeption
从一个不存在的文件中读取数据 越过文件结尾继续读取 连接一个不存在的URL 连接一个不存在的URL
5
Java当中的异常处理机制 Java当中的异常处理机制
异常是一个对象,必须是某个异常类的实 例,这个异常必须是已经定义好的。 例,这个异常必须是已经定义好的。 Java类库中已经存在了许多异常类,每种异 Java类库中已经存在了许多异常类,每种异 常类对应着某一种或者某一类错误,类中 包含着错误的相关信息和处理方法。 如果程序发生错误的当前结构中没有处理 如果程序发生错误的当前结构中没有处理 此异常的机制,那么它将移交给外层结构 处理,如果还不行,就继续上交,直到操 处理,如果还不行,就继续上交,直到操 作系统,操作系统就会终止程序的运行。
17
异常使用中的两个问题(1) 异常使用中的两个问题(
异常的匹配:异常的控制过程与swich相似, 异常的匹配:异常的控制过程与swich相似, 但有本质区别

Java中异常的捕获与处理

Java中异常的捕获与处理⼀、Java异常简介什么是异常?程序运⾏时,发⽣的不被期望的事件,它阻⽌了程序按照程序员的预期正常执⾏,这就是异常。

异常发⽣时,是任程序⾃⽣⾃灭,⽴刻退出终⽌。

在Java中即,Java在编译或运⾏或者运⾏过程中出现的错误。

Java提供了更加优秀的解决办法:异常处理机制。

异常处理机制能让程序在异常发⽣时,按照代码的预先设定的异常处理逻辑,针对性地处理异常,让程序尽最⼤可能恢复正常并继续执⾏,且保持代码的清晰。

Java中的异常可以是函数中的语句执⾏时引发的,也可以是程序员通过throw 语句⼿动抛出的,只要在Java程序中产⽣了异常,就会⽤⼀个对应类型的异常对象来封装异常,JRE就会试图寻找异常处理程序来处理异常。

Java异常机制⽤到的⼏个关键字:try、catch、finally、throw、throws。

try -- ⽤于监听。

将要被监听的代码(可能抛出异常的代码)放在try语句块之内,当try语句块内发⽣异常时,异常就被抛出。

catch -- ⽤于捕获异常。

catch⽤来捕获try语句块中发⽣的异常。

finally -- finally语句块总是会被执⾏。

它主要⽤于回收在try块⾥打开的物⼒资源(如数据库连接、⽹络连接和磁盘⽂件)。

只有finally 块,执⾏完成之后,才会回来执⾏try或者catch块中的return或者throw语句,如果finally中使⽤了return或者throw等终⽌⽅法的语句,则就不会跳回执⾏,直接停⽌。

throw -- ⽤于抛出异常。

throws -- ⽤在⽅法签名中,⽤于声明该⽅法可能抛出的异常。

主⽅法上也可以使⽤throws抛出。

如果在主⽅法上使⽤了throws抛出,就表⽰在主⽅法⾥⾯可以不⽤强制性进⾏异常处理,如果出现了异常,就交给JVM进⾏默认处理,则此时会导致程序中断执⾏。

产⽣异常的原因:⽤户输⼊了⾮法数据。

要打开的⽂件不存在。

《java的异常处理》课件


`IOException`、`NullPointerException`等
抛出异常的规则
9字
避免在方法签名中声明抛出 异常,除非该方法确实会抛 出异常
9字
在`try`块后使用`catch`块来 处理异常,或者在方法签名 中声明抛出异常,让调用者 处理异常
9字
在可能抛出异常的代码块前 使用`try`块,将可能抛出异 常的代码放在`try`块中
04
抛出异常
抛出异常的时机
无法处理或恢复的错误情况
程序逻辑错误,如除以零或数组越界
输入数据不符合预期格式或范围 外部资源不可用,如文件不存在或数据库 连接失败
抛出异常的方式
01 使用`throw`关键字抛出异常对象
02
抛出异常对象时,可以附加异常信息,以帮助理解异
常的原因和上下文
03
可以抛出自定义异常类或Java标准库中的异常类,如
案例三:文件未找到异常处理
总结词
文件未找到异常是Java中常见的IO异常,处 理不当可能导致程序崩溃。
详细描述
当程序中打开一个不存在的文件时,就会抛 出FileNotFoundException异常。处理这种 异常的方法包括在打开文件前,先判断文件 是否存在,如果不存在则创建文件或抛出异 常。同时,也可以使用try-catch语句块捕 获异常,或者在可能出现异常的代码前使用 if条件判断来避免异常发生。
示例
如果一个方法需要读取一个文件 ,但文件不存在,那么在运行时 可能会抛出文件找不到异常。
自定义异常
总结词
详细描述
示例
自定义异常是Java中允许程序 员自定义的异常类型,它们可 以继承自已有的异常类或实现 自定义的异常接口。

第四章 异常处理


4.6 自定义异常类
在自定义异常类时,首先应继承Throwable类或其子类, 类或其子类, 在自定义异常类时,首先应继承 继承 类或其子类 形成一个新的异常类,然后利用new关键字来建立一个 形成一个新的异常类,然后利用 关键字来建立一个 自定义异常类的对象,并用throw语句抛出。 语句抛出。 自定义异常类的对象,并用 语句抛出 【例4.7】 】 class MyEx extends Exception{ MyEx(String msg) { super(msg); //调用 调用Exception类的构造方法 调用 类的构造方法 } }
4.1异常简介 异常简介
在java中,程序于编译时产生的错误一般为语法错误(syntax 中 程序于编译时产生的错误一般为语法错误( error),而在运行时产生的错误则称为运行时期错误(runtime ),而在运行时产生的错误则称为运行时期错误( ),而在运行时产生的错误则称为运行时期错误 error)。编译错误由编译程序 产生, )。编译错误由编译程序javac产生,而运行时的错误通常称为异 产生 而运行时的错误通常称为异 ),异常也是 中的类。 常(Exception),异常也是 ),异常也是java中的类。 中的类
【例4.1】除数为 的异常 】除数为0的异常
public class Ex1{ int x; public static void main(String args[]){ Ex1 c=new Ex1(); int y; y=3/c.x; System.out.println(“ok”); } }
异常的层次结构: 异常的层次结构:
try/catch/finally机制 机制
try {可能出现异常的程序代码 可能出现异常的程序代码} 可能出现异常的程序代码 catch (异常类名 异常类名1 异常类名 catch (异常类名 异常类名2 异常类名 … finally {必须执行的代码} 必须执行的代码 必须执行的代码 异常对象名1) 异常对象名 异常对象名2) 异常对象名 {异常类名 对应的异常处理代码 异常类名1对应的异常处理代码 异常类名 对应的异常处理代码} {异常类名 对应的异常处理代码 异常类名2对应的异常处理代码 异常类名 对应的异常处理代码}
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Java
Java的异常处理
捕获异常
捕获异常是通过try-catch-finally语句实现的 捕获异常是通过try-catch-finally语句实现的 try try{ …… }catch(ExceptionName1 e){ …… } catch(ExceptionName2 e){ …… }finally{ …… }
Java
Java的异常处理
抛弃异常
如何抛弃异常 抛弃异常首先要生成异常对象 ,异常对象可由某些 类的实例生成,也可以由JAVA虚拟机生成。 JAVA虚拟机生成 类的实例生成,也可以由JAVA虚拟机生成。抛弃异常 对象时通过throw语句实现。 对象时通过throw语句实现。 throw语句实现 IOException e=new IOException( ); throw e; 可以抛弃的异常必须是Throwable或者其子类的实例。 Throwable或者其子类的实例 可以抛弃的异常必须是Throwable或者其子类的实例。 下面的语句在编译时将会产生语法错误 String(“want throw”); throw new String( want to throw );
Java
Java的异常处理
抛弃异常
声明抛弃异常 如果在一个方法中生成了一个异常, 如果在一个方法中生成了一个异常,但是 这一方法并不确切的知道如何对这一异常事 件进行处理,这时, 件进行处理,这时,一个方法就应该声明抛 弃异常。 弃异常。
“一个方法不仅需要告诉编译器将要返回什么 值,还要告诉编译器可能发生什么异常” 还要告诉编译器可能发生什么异常”
Java
Java的异常处理
自定义类
class FileFormatException extends IOException{ public FileFormatException(){} public FileFormatException(String gripe) { super(gripe); } }
Java
Java的异常处理
抛弃异常
声明抛弃异常 声明抛弃异常是在一个方法声明中的throw 声明抛弃异常是在一个方法声明中的throw 子句中指明的。 子句中指明的。例如 public FileInputStream(String name )throws IOException throws子句中可以同时指明多个异常, throws子句中可以同时指明多个异常,说明 子句中可以同时指明多个异常 该方法将不对这些异常进行处理, 该方法将不对这些异常进行处理,而是声明 抛弃它们。 抛弃它们。 public static void main(String args[])throws IOException,IndexOutOfBoundsException
“如果出现RuntimeException异常,就一 如果出现RuntimeException异常, RuntimeException异常 定是你的问题” 定是你的问题”
Java
Java的异常处理
异常(Throwable)分类 异常(Throwable)
Exception 非运行时异常
除了运行时异常之外的其它的继承自Exception的 除了运行时异常之外的其它的继承自Exception的 Exception 异常类。 异常类。 程序曾经能够正常运行,但由于某种情况的变化, 程序曾经能够正常运行,但由于某种情况的变化, 导致异常出现,程序不能正常运行。 导致异常出现,程序不能正常运行。 -文件不存在 -用户输入错误 …… 编译器要求程序必须对d) 编译器要求程序必须对这类异常进行处理(checked)
Java
Java的异常处理
抛弃异常
对于已存在的异常类, 对于已存在的异常类,抛出该异常非常容易 找到一个合适的异常类; 1. 找到一个合适的异常类; 创建这个类的一个对象; 2. 创建这个类的一个对象; 将该对象抛出; 3. 将该对象抛出;
Java
Java的异常处理
抛弃异常
对于已存在的异常类, 对于已存在的异常类,抛出该异常非常容易 String readData(Scanner in)throws EOFException { … while(…) while( ) { if(!in.hasNext( )) { if(n<len) throw new EOFException( ); } } }
Java
Java的异常处理
异常示例
c:\>javac ExceptionDemo1.java ExceptionDemo1.java:6:Exception java.io.FileNotFoundException must be caught,or it must be declared in the throws clause of this method FileInputStream fis=new FileInputStream(“text”); ExceptionDemo1.java:8:Exception Java.io.IOException must be caught,or it must be declared in the throws clause of this method while((b=fis.read())!=-1){
Java
Java的异常处理
自定义异常类
自定义异常类即是定义一个派生于Exception的直接或 自定义异常类即是定义一个派生于Exception的直接或 Exception 间接子类;如一个派生于IOException的类。 IOException的类 间接子类;如一个派生于IOException的类。 一般情况下,定义的异常类应该包括两个构造器, 一般情况下,定义的异常类应该包括两个构造器,一个 是默认的构造器, 是默认的构造器,一个是带有详细描述信息的构造器 超类Throwable toString方法会打印出这些详细信 Throwable的 (超类Throwable的toString方法会打印出这些详细信 有利调试代码) 息,有利调试代码)
Java
Java的异常处理
异常(Throwable)分类 异常(Throwable)
Exception 运行时异常
继承于RuntimeException.Java 继承于RuntimeException.Java 一般是由于程序错误产生 -错误的类型转换 -数组访问越界 -访问空指针 …… 编译器允许不对它们做出处理(unchecked) 编译器允许不对它们做出处理(unchecked)
Java
Java的异常处理
try
捕获异常的第一步使用try{ 捕获异常的第一步使用try{……}选定捕 try{ } 获异常的范围, try所限定的代码块中的 获异常的范围,由try所限定的代码块中的 语句在执行过程中可能会生成异常对象
Java
Java的异常处理
catch 每个try代码块可以伴随一个或多个catch语句, try代码块可以伴随一个或多个catch语句 -每个try代码块可以伴随一个或多个catch语句,用 于处理try代码块中所生成的异常事件。 try代码块中所生成的异常事件 于处理try代码块中所生成的异常事件。 catch语句只需要一个形式参数指明它所能捕获的 -catch语句只需要一个形式参数指明它所能捕获的 异常类型,这个类必须是Throwable的子类, Throwable的子类 异常类型,这个类必须是Throwable的子类,运行时系 统通过参数值把被抛弃的异常对象传寄给catch catch块 统通过参数值把被抛弃的异常对象传寄给catch块 catch块中是对异常对象进行处理的代码 块中是对异常对象进行处理的代码, -在catch块中是对异常对象进行处理的代码,与访 问其他对象一样, 问其他对象一样,可以访问一个异常对象的变量或调 用它的方法。getMessage()是类Throwable ()是类Throwable所提供的 用它的方法。getMessage()是类Throwable所提供的 方法,用来得到有关异常事件的信息, Throwable还 方法,用来得到有关异常事件的信息,类Throwable还 提供了方法printStackTrace()用来跟踪异常事件发 printStackTrace() 提供了方法printStackTrace()用来跟踪异常事件发 生时执行堆栈的内容
Java
Java的异常处理
自定义类
String readData(BufferedReader in)throws FileFormatException{ …… while(…) { if((ch=read())==-1) { if(n<len) throw new FileFormatException(“File format error!”); } } }
Java
Java的异常处理
异常处理
class ExceptionDemo2{ public static void main(String args[]) { int a=0; System.out.println(5/a); } }
Java
Java的异常处理
异常处理
c:/>javac ExceptionDemo2.java c:/>java ExceptionDemo2 ng.ArithemeticException:/by zero at ExceptionDemo2.main(ExceptionDemo2.java:4)
Java
Java的异常处理
LinkageError Error VirtureMachineError AWTError Throwable IndexOutOfBounds RuntimeExcept ion Exception IOException
ArithmaticException
相关文档
最新文档