04_异常处理要领.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
1、纲要 1 2、内容 1 2.1、计算机语言发展简史 1 2.2、Java发展简史 1 2.3、Java语言特性 2 2.4、Java的加载与执行 2 2.5、开始第一个Java程序 3 2.5.1、J2SE 的安装 3 2.5.2、搭建开发环境 3 2.6、public class 和 class的区别 5 纲要 异常的基本概念 异常的分类 异常的捕获和处理 自定义异常 方法覆盖与异常 内容 2.1、异常的基本概念 什么是异常,在程序运行过程中出现的错误,称为异常 public class ExceptionTest01 { public static void main(String[] args) { int i1 = 100; int i2 = 0; int i3 = i1/i2; System.out.println(i3); } } 没有正确输出,抛出了被0除异常 通过以上示例,我们看到java给我们提供了这样一个体系结构,当出现问题的时候,它会告诉我们,并且把错误的详细信息也告诉我们了,这就是异常的体系结构,这样我们的程序更健壮,我们可以把这个信息,再进行处理以下告诉用户。从上面大家还可以看到,java异常都是类,在异常类中会携带一些信息给我们,我们可以通过这个类把信息取出来 2.2、异常的分类 2 .2.1、异常的层次结构 2.2.2、异常的分类 异常主要分为:错误、一般性异常(受控异常)、运行期异常(非受控异常) 错误:如果应用程序出现了Error,那么将无法恢复,只能重新启动应用程序,最典型的Error的异常是:OutOfMemoryError 受控异常:出现了这种异常必须显示的处理,不显示处理java程序将无法编译通过 非受控异常:此种异常可以不用显示的处理,例如被0除异常,java没有要求我们一定要处理, 当出现这种异常时,肯定是程序员的问题 2.3.1、try、catch和finally 异常的捕获和处理需要采用try和catch来处理,具体格式如下: try { }catch(OneException e) { }catch(TwoException e) { }finally { } try中包含了可能产生异常的代码 try后面是catch,catch可以有一个或多个,catch中是需要捕获的异常 当try中的代码出现异常时,出现异常下面的代码不会执行,马上会跳转到相应的catch语句块中,如果没有异常不会跳转到catch中 finally表示,不管是出现异常,还是没有出现异常,finally里的代码都执行,finally和catch可以分开使用,但finally必须和try一块使用,如下格式使用finally也是正确的 try { }finally { } 【示例代码】 public class ExceptionTest02 { public static void main(String[] args) { int i1 = 100; int i2 = 0; //try里是出现异常的代码 //不出现异常的代码最好不要放到try作用 try { //当出现被0除异常,程序流程会执行到“catch(ArithmeticException ae)”语句 //被0除表达式以下的语句永远不会执行 int i3 = i1/i2; //永远不会执行 System.out.println(i3); //采用catch可以拦截异常 //ae代表了一个ArithmeticException类型的局部变量 //采用ae主要是来接收java异常体系给我们new的ArithmeticException对象 //采用ae可以拿到更详细的异常信息 }catch(ArithmeticException ae) { System.out.println(被0除了); } } } 2.3.2、getMessage和printStackTrace() 如何取得异常对象的具体信息,常用的方法主要有两种: 取得异常描述信息:getMessage() 取得异常的堆栈信息(比较适合于程序调试阶段):printStackTrace(); 【代码示例】 public class ExceptionTest03 { public static void main(String[] args) { int i1 = 100; int i2 = 0; try { int i3 = i1/i2; System.out.println(i3);

文档评论(0)

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

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

1亿VIP精品文档

相关文档