- 1、本文档共38页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第六章的 异常处理
常见的RuntimeException ClassCastException:类型转换错误 比如 Object obj=new Object(); String s=(String)obj; ArithmeticException:算术错误 典型的就是0作为除数的时候。 IllegalArgumentException:非法参数 在把字符串转换成数字的时候经常出现的这个异常 可以在自己的程序中好好利用这个异常。 自定义异常类 在Java中已经提供了大量的异常类,但是这些异常类有些时候也很难满足开发者的要求 所以此时用户可以根据自己的需要定义自己的异常类,使得类在出现错误时尽量的强壮。 定义异常类,只需要继承Exception类即可。 class MyException extends Exception{ // 自定义异常类,继承Exception类 public MyException(String msg){ // 构造方法接收异常信息 super(msg) ; // 调用父类中的构造方法 } } public class DefaultException { public static void main(String args[]) { try{ throw new MyException(自定义异常。) ; // 抛出异常 }catch(Exception e){ // 异常处理 System.out.println(e) ; } } } MyException: 自定义异常。 自定义异常类 自定义异常的原则 Java异常类体系中不包含所需要的异常类型。 用户需要将自己所提供类的异常与其他人提供类的异常进行区分。 类中将多次抛出这种类型的异常。 如果使用其他程序包中定义的异常类,将影响程序包的独立性与自包含性。 自定义异常类与Java异常类的融合 由于Java异常处理机制只能处理Throwable类或其子类的对象,所以自定义异常类需要选取Throwable类或其某个子类作为父类。 一般自定义的异常类都以Exception类为父类。 从Exception类派生的自定义异常类的名字一般以Exception结尾。 自定义异常类的定义与使用 定义异常类 public class ServerTimeOutException extends Exception{ private String reason; private int port ; public ServerTimeOutException(String reason, int port){ this.reason = reason; this.port = port;} public String getReason() {return reason;} public int getPort() {return port;} } Public void connectMe(String serverName) throws ServerTimeOutException{ int success ; int portToConnect = 80; success = open(serverName, portToConnect); if(success= -1){ throw new ServerTimedOutException( “Could not connect”,80); } } 抛出产生的异常 获得异常并处理 Public void findServer(){ try{ connectMe(defaultServer); }catch(ServerTimeOutException e){ System.out.println(“Server timed out, try another”); try{ connectMe(alternateServer); }catch(ServerTimeOutException e1){ System.out.println(“No server avaliable”); } } 异常使用默认规则 对异常的处理,有一条行之有效的默认规则:向上抛出 被调用类在运行过程中对遇到的异常一概不作处理,而是直接向上抛出,一直到最上层的调用类 调用类根据应用系统的需求和特定的异常处理规则进行处理 如向控制台输出异常堆栈信息,打印在日志文件中。 用一句形象的话来说,就是谁使用,谁(最上层的调用类)处理。 小结 异常处理机制是保证Java程序正常运行、具
您可能关注的文档
- 第七章:公共的组织行为.ppt
- 第七章计的算机原理.ppt
- 第七课 个人收的入的分配.doc
- 第七讲 马克思主义与社会科学的方法论.ppt
- 第三代移动通信技术的现状的及前景.pdf
- 第三单的元 单元检测B.docx
- 第三周1二进制的逻辑运算.pptx
- 第一课 的创造美的艺术.ppt
- 第七节、屏的蔽门系统.ppt
- 第三周字母以及字母组的合发音教学.ppt
- 6.3复合判断的演绎推理方法 课件 统编版高中政治选择性必修三《逻辑与思维》.pptx
- 第三课 领会科学思维 课件 统编版高中政治选择性必修三《逻辑与思维》.pptx
- 4.2明确概念的方法 教学设计 统编版高中政治选择性必修三《逻辑与思维》.docx
- 5.2正确运用简单判断 课件 统编版高中政治选择性必修三《逻辑与思维》.pptx
- 4.2 明确概念的方法 课件 统编版高中政治选择性必修三《逻辑与思维》.pptx
- 5.1判断的概述 课件 统编版高中政治选择性必修三《逻辑与思维》.pptx
- 1.1思维的含义与特征 课件 统编版高中政治选择性必修三《逻辑与思维》.pptx
- 2.1逻辑的多种含义 教学设计 统编版高中政治选择性必修三《逻辑与思维》.docx
- 4.1概念的概述 课件 统编版高中政治选择性必修三《逻辑与思维》.pptx
- 11.1创新思维的含义与特征 课件 统编版高中政治选择性必修三《逻辑与思维》.pptx
最近下载
- 长期卧床患者的体位护理技巧.pptx VIP
- JBT14159.3-2022 空气分离设备能效限额第3部分:液化设备.pdf VIP
- 《民用建筑设计通则》图示.docx VIP
- 灭火应急疏散预案.doc VIP
- 铁路内燃、电力司机考试题库.doc VIP
- 新概念英语第一册 Lesson 55-56 课件.ppt VIP
- 2025AI+BI峰会:DeepInsight Copilot 演进史以及未来探索.pdf VIP
- 《临床药学文献阅读汇报抗感染粘菌素在治疗鲍曼不动杆菌感染vap中的应用》课件模板.ppt VIP
- 2025年福建公需课答案.pdf VIP
- 2020四川园林绿化工程说明及计算规则.pdf VIP
文档评论(0)