cstp培训课件_异常.pptVIP

  1. 1、本文档共38页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
cstp培训课件_异常.ppt

目标 简介异常处理 throw、throws 异常的继承架构 总结 一个程序的编写的过程中,避免程序执行时的错误,往往占了程序开发时程的绝大多数时间,对于避免程序执行时的错误,Java 提供了异常处理机制。 在还没有学习异常处理之前,如果您要编写一个除法程序,并由使用者输入除数与被除数,由于被除数除以0没有意义,所以之前可能必须像以下这样避免错误: if(b != 0) ??? System.out.println(a / b); else ??? System.out.println(除数不能为0); 这样的方式过去在一些程序语言中会很常被利用,利用判断条件来避免错误的发生,然而这样的方式会让错误处理与程序的处理逻辑混在一起,使得程序难以阅读,而 由于使用了一些判断条件,即使有一些很少发生的错误,也都必须一视同仁的进行判断检查,这会使得程序的执行效能受到一定程度的影响。 Java的异常处理机制可以协助我们捕捉程序执行时期的错误,它用来处理一些系统可以恢复的错误,异常(Exception)是Java中定义的一种对象数据型态,在特定错误发生时会丢出异常对象,我们可以捕捉这些异常并加以处理,避免程序可能的错误发生。 Java的异常处理藉由try、catch、finally三个关键词组合的语言来达到,其语法基本结构如下: try { ? ? // 陈述句 } catch(异常类型 名称) { ? ? // 异常处理 } finally { ? ? // 一定会处理的区块 } 一个“try”所包括的区块,必须有对应的“catch”区块,它可以有多个“catch”区域,而“finally”可有可无,如果没有定义“catch”区块,则一定要有“finally”区块。 建议:大家在编写异常时,多使用 finally import java.io.*; public class UseException { public static void main(String[] args) { try { int input; BufferedReader buf = new BufferedReader( new InputStreamReader(System.in)); System.out.print(请输入整数: ); input = Integer.parseInt(buf.readLine()); System.out.println(input x 10 = + (input*10)); } catch(IOException e) { System.out.println(I/O错误); } catch(NumberFormatException e) { System.out.println(输入格式有误); } } } 异常处理是程序在执行但发生错误并无法处理时,会丢出一个异常对象,在这个程序中,您特意 使用 BufferedReader 取得输入,当使用 BufferedReader类别时,若发生I/O错误会丢出IOException异常,这个异常您必须处理。 您试着从使用者输入取得一个整数值,由BufferedReader对象所读取到的输入是个字符串,您使用Integer类别的 parseInt()方法试着剖析该字符串为整数,如果无法解析,则会发生错误并丢出一个NumberFormatException异常对象,当这个异常丢出后,程序会离开目前执行的位置,而如果设定的“catch”有捕捉这个异常,则会执行对应区块中的陈述句,注意当异常一但抛出,就不会再回到异常的抛出点了。 如果程序中设定有“finally”区块,则无论异常是否有发生,则一定会执行“finally”区块中所定义的陈述句,“finally”区块使用时机 的例子之一,就是当您开启了某个文件时,在读/写的过程中发生错误,在使用“catch”区块处理相对应的异常之后,最后在“finally”区块中定义 一些关闭文件的动作,让关闭文件的动作一定会被执行。 使用异常处理的好处是您可以将程序逻辑与错误处理分开,使得程序易于编写、阅读与维护,由于异常处理是在程序执行时发生错误,而没有办法处理之时才产生异常对象,所以与使用判断式来避免异常的方式比起来,异常处理会有比较好的执行效能。 当程序发生错

文档评论(0)

aiwendang + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档