- 1、本文档共33页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
异常处理 异常概述 Java异常的层次关系 捕获异常 异常 不要指望你的程序永远不会出错 Java程序运行过程中所发生的异常事件可分为两类: 错误(Error):JVM系统内部错误、资源耗尽等严重情况 异常(Exception): 其它因编程错误或偶然的外在因素导致的一般性问题,例如: 对负数开平方根 空指针访问 试图读取不存在的文件 网络连接中断 常见的处理异常的方法 由计算机系统本身直接检测程序错误,遇到错误时程序立即终止运行 由程序员在程序设计中兼顾错误检测,错误显示和错误处理 一个好的健壮的程序,除了能够实现用户要求的所有功能,还应该能够预测并处理程序执行过程中出现的异常现象。异常是指程序运行时出现异常而种植,如果不能对这些问题进行及时处理,程序的运行极不稳定,程序经常因出现异常而终止。 C语言处理异常的方法 if(布尔表达式1){ 语句 ; //正常的程序 } else if(布尔表达式2){ 语句;//处理异常的情况1 } else if(布尔表达式3){ 语句; //处理异常的情况2 } ……………… 在Java中,把程序中运行的错误都看作一种异常类,通过对语句块的检测,一个程序中所有的异常都被收集起来放在程序某一段中处理。在Java的运行系统中,专门设置了一个调用栈,此栈中装有执行异常处理方法的指针,当程序运行时,系统会把收集到的异常和异常处理指针所指向的异常逐个比较,如果找到相符的类型,就转向相应的方法进行处理。 Exception类 在传统的编程语言中,程序员只能通过函数的返回值来发出错误信息,这很容易导致很多错误。通常,用errno来存储异常的类型,这个常常被误用,因为一个errno的值有可能在被处理前被另外的错误覆盖掉。 Java中,采用面向对象的方法处理程序异常,类中包含了对该异常相关信息和对异常的处理方法。 异常例子 public class ExceptionExam { public static void main(String args[]) { int a,b; double c; a = Integer.parseInt(args[0]); b = Integer.parseInt(args[1]); c = a/b; System.out.println(a + / + b + = +c); } } 异常例子 public class ExceptionExam1 { public static void main(String args[]) { java.util.Date d = null; System.out.println(d.getTime()); } } Java中的异常类 Java中所有的异常类和错误类都是Throwable类的直接或间接子类,他是java.lang包的类,派生了Exception和Error两个子类。其中,Error类描述的错误是系统发生的内部错误以及系统资源耗尽的情况,这是无法回复的系统错误,用户应用程序中不能使用该类。而Exception类可以供用户的应用程序使用 Error/Exception层次图 常见异常 RuntimeException ArithmeticException:数学计算异常 NullPointerException:空指针异常 NegativeArraySizeException:负数组长度异常 ArrayOutOfBoundsException:数组索引越界异常 ClassNotFoundException:类文件未找到异常 ClassCastException:造型异常 IOException FileNotFoundException:文件未找到异常 EOFException:读写文件尾异常 MalformedURLException:URL格式错误异常 SocketException:Socket异常 Java异常处理机制 Java程序的执行过程中如出现异常,会自动生成一个异常类对象,该异常对象将被提交给Java运行时系统,这个过程称为抛出(throw)异常。 当Java运行时系统接收到异常对象时,会寻找能处理这一异常的代码并把当前异常对象交给其处理,这一过程称为捕获(catch)异常。 如果Java运行时系统找不到可以捕获异常的方法,则运行时系统将终止,相应的Java程序也将退出。 程序员通常只能处理违例(Exception),而对错误(Error)无能为力。 异常处理的try-catch-finally语句 try{ // 可能会抛出特定异常的代码段 }catch(MyExceptionType myException){ // 如果my
您可能关注的文档
- chap 8 Linux curses函数库.ppt
- chap01-fx运用信息以及通信技术打破行政机关的组织界限,构建一个电子化的虚拟机关,使得公众摆脱传统的层.ppt
- chap2 税收的基本原理.ppt
- chap5-金融资产的种类与特性.ppt
- chap7系统时间响应及其仿真.ppt
- chap08数据备份与还原.ppt
- chapt9 局域网.ppt
- chapter_5_存储器原理与扩展.ppt
- Chapter_06 JAVA的异常处理机制.ppt
- chapter1 Web基础.ppt
- 职业技术学院2024级工业机器人技术(安装与维护)专业人才培养方案.docx
- 职业技术学院2024级应用化工技术专业人才培养方案.pdf
- 职业技术学院2024级软件技术(前端开发)专业人才培养方案.pdf
- 职业技术学院2024软件技术专业人才培养方案.docx
- 职业技术学院2024级信息安全技术应用(安全运维)专业人才培养方案.docx
- 职业技术学院2024级新能源汽车检测与维修技术(车辆鉴定与评估)专业人才培养方案.pdf
- 职业技术学院2024级石油炼制技术专业人才培养方案.pdf
- 职业技术学院2024级环境监测技术专业人才培养方案.docx
- 职业技术学院2024级汽车制造与试验技术专业人才培养方案.pdf
- 职业技术学院2024级信息安全技术应用专业人才培养方案.pdf
文档评论(0)