字节输入流InputStream部分子类继承关系图.ppt

字节输入流InputStream部分子类继承关系图.ppt

  1. 1、本文档共60页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
字节输入流InputStream部分子类继承关系图.ppt

第5章 异常处理与输入输出 异常处理 输入输出 一、异常 异常指的是程序运行过程中出现的非正常事件。其中非正常事件指的是被0除、用户输入出错、找不到文件等 异常指的是运行错误,编译错误不是异常 Java对异常的处理 1.提供大量的异常类 (1) Java预定义了很多Exception类和Error类及其大量的子类来描述异常。这些类都是Throwable类的子类 。 (2) Java的异常类分为 运行时异常类:继承RuntimeException的类 非运行时异常类:除RuntimeException类及其子类外 见教材p131 2.异常处理方式 (1)系统自动处理 一旦程序中出现异常,运行时系统将会自动产生一个相应的异常类对象,每一个异常事件都由一个异常对象来描述。 public class ExceptionExample { static int num; public static void main(String args[]) { num=Integer.parseInt(args[0]); System.out.println("100整除"+num+"="+100/num); } } 本程序若输入num值为0,则产生ArithmeticException异常类对象 (2)程序员主动干预异常 运用异常处理机制对可能出现的异常进行干预,干预手段两种: a.使用try…catch…finally结构对异常进行捕获和处理 b.通过throw或throws关键字将异常抛出。 a.使用try…catch…finally结构对异常进行捕获和处理 其语法格式: try{ //程序代码(可能导致异常的代码 ) } catch(异常类类型1 对象名1){ //程序代码 } catch(异常类类型2 对象名2){ //程序代码 } … finally{ //程序代码 } 说明请见教材p133 例:利用try…catch…finally结构捕获ExceptionExample类中所有的异常 public class ExceptionExample { static int num; public static void main(String args[]) { try{ num= Integer.parseInt(args[0]); System.out.println("100整除"+num+"="+100/num); } catch(ArrayIndexOutOfBoundsException e){ System.out.println("你还没有输入呢,请输入整数值!"); } catch(NumberFormatException e) { System.out.println("你输入的是小数或字符,请输入整数值!"); } catch(ArithmeticException e){ System.out.println("你输入的是0,请输入非0整数值!"); } } } b.通过throw或throws关键字将异常抛出 (a)利用throw关键字直接抛出异常 在编写程序的过程中,对可能会引发异常的地方 直接使用throw语句自行抛出,当直接利用throw 语句抛出异常时,一定要对抛出的异常进行捕获。 语法格式: throw new 异常类类型([信息]) 其中异常类类型为系统异常类名或用户自定 义的异常类名。toString方法可返回上面的信息内 容 例:直接抛出异常以处理分母输入为0的情况 public class ExceptionDemo { static int num; public static void main(String args[]) { try{ num= Integer.parseInt(args[0]); if (num==0 ) throw new ArithmeticException("你应该输入非0整数值!"); System.out.println("100整除"+num+"="+100/num); } catch(ArrayIndexOutOfBoundsEx

文档评论(0)

youbika + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档