- 1、本文档共38页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
java的异常处理.ppt
程序中的错误可分为三类: 编译错误、逻辑错误和运行时错误。 编译错误是由于没有遵循Java语言的语法规则而产生的,这种错误要在编译阶段排除,否则程序不可能运行。 逻辑错误是指程序编译正常,也能运行,但结果不是人们所期待的。 运行时错误是指程序运行过程中出现了一个不可能执行的操作,就会出现运行时错误,运行时错误有时也可以由逻辑错误引起。 异常处理的主要目的是即使在程序运行时发生了错误,也要保证程序能正常结束,避免由于错误而使正在运行的程序中途停止。 什么是异常? 异常是程序执行期间发生的各种意外或错误。比如说: ① 用户输入出错 ② 所需文件找不到 ③ 运行时磁盘空间不够 ④ 内存不够 ⑤ 算术运算错 (数的溢出,被零除…) ⑥ 数组下标越界 ...... 在Java程序运行过程中,产生的异常通常有三种类型: 一是JAVA虚拟机由于某些内部错误产生的异常,这类异常不在用户程序的控制之内,也不需要用户处理这类异常; 二是标准异常类,由java系统预先定义好的。这类异常是由程序代码中的错误而产生的,如:以零为除数的除法,访问数组下标范围以外的数组元素,访问空对象内的信息,这是需要用户程序处理的异常。 三是根据需要在用户程序中自定义的一些异常类。 Error类是Throwable类的子类,由系统保留,用户不能使用。也就是说, Error类型的错误不允许用户插手处理,由Java系统自行处理。 Error类描述系统错误:如将字节码装入内存的过程中和对字节码进行检查的过程中遇到的问题、java的内部错误、资源耗尽的情况。 这类异常由java直接处理,用户程序不要理会这类异常。 三、异常的处理机制 Java对异常的处理涉及两方面的内容: 一是抛出(throw)异常 二是捕捉(catch)异常 如果程序在运行过程中出现了运行错误,并且产生的异常与系统中预定义某个异常类相对应,系统就自动产生一个该异常类的对象,这个过程称为抛出(throw)异常。当有异常对象抛出时,将在程序中寻找处理这个异常的代码,如果找到处理代码,则把异常对象交给该段代码进行处理,这个过程称为捕捉(catch)异常。如果程序中没有给出处理异常的代码,则把异常交给Java运行系统默认的异常处理代码进行处理。默认的处理方式是:首先显示描述异常信息的字符串,然后终止程序的运行。 Throws语句举例 class Throws_Exp { public static void main(String[] args) throws ArithmeticException,ArrayIndexOutOfBoundsException { int a=4,b=0,c[]={1,2,3,4,5}; System.out.println(a/b); System.out.println(c[a+1]); System.out.println(“end”); }} Throw语句举例1 class Throw_Exp1 { public static void main(String[] args) { ArithmeticException e=new ArithmeticException(); int a=4,b=0; System.out.println(“Before ArithmeticException”); if(b==0) throw e; System.out.println(a/b); }} Throw语句举例2 class Throw_Exp2 { public static void main(String[] args) { int a=5,c[]={1,2,3,4,5}; System.out.println(“Before throw ArrayIndexOutOfBoundsException”); if(a4) throw (new ArrayIndexOutOfBoundsException()); System.out.println(“After throw ArrayIndexOutOfBoundsException”); }} Throw语句
您可能关注的文档
- (北师大版)白银市2013年小学升初中摸底统一考试语文试题.doc
- (格力)危险源识别评价及控制表.xls
- (模型)关于中国大气气溶胶光学厚度的一个参数化模式.pdf
- (沪教版)六年级数学上册课件公因数与最大公因数.ppt
- (海洋环境探测分析雷达远距离回波信号的谱处理.pdf
- (用)用于土壤侵蚀试验的降雨模拟器研究进展.pdf
- ,可以和我讨论,我将给予力所能及的帮助我的目的是让大家熟悉我们研究的作物,.xls
- 13年秋东财《资产评估》在线作业三题及答案.doc
- 2008年度国际市场最大225家承包商市场分析.pdf
- 2012年ACCF和AHA_关于不稳定性心绞痛和非ST段抬高心肌梗塞治疗的修订指南.ppt
文档评论(0)