跟我学java面向对象程序设计技术及应用——java异常处理技术及应用

跟我学java面向对象程序设计技术及应用——java异常处理技术及应用

ID:33056518

大小:139.05 KB

页数:16页

时间:2019-02-19

跟我学java面向对象程序设计技术及应用——java异常处理技术及应用_第1页
跟我学java面向对象程序设计技术及应用——java异常处理技术及应用_第2页
跟我学java面向对象程序设计技术及应用——java异常处理技术及应用_第3页
跟我学java面向对象程序设计技术及应用——java异常处理技术及应用_第4页
跟我学java面向对象程序设计技术及应用——java异常处理技术及应用_第5页
资源描述:

《跟我学java面向对象程序设计技术及应用——java异常处理技术及应用》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、1.1跟我学Java面向对象程序设计技术及应用一一Java异常处理技术及应用[木讲的知识要点]Java界常编程规则、try、catch>finally语句、声明和抛岀界常,用户自定义界常类的编程规则1.1.1异常处理技术1、含义程序在运行过程中所发生的错误事件(如数组越界、文件操作时未找到文件、除法溢出等),而这些错误在设计吋不能准确地识别出但又可能会发生或者不会发生。2、正确理解程序设计中的三种错误(1)语法错课(编译时的错课)(2)逻辑错误(运行吋的错误)(3)异常错误(运行时的错误)3、异常错误的特点(以“人身保险”为例加

2、以说明异常的特性)1)程序在运行过程中所发生的错误事件;2)程序员在编程时无法预知它是否会产生;3)产生与否取决于程序当时的执行坏境。4、代码示例importjava.io.*;classExceptionDemo{publicstaticvoidmain(Stringargs[]){FilelnputStreamfis=newFileInputStream(tttexf,);〃如果所打开的文件名不存在的intb;〃情况下将产生异常while((b=fis-read())!=・1){System.out.println(b);f

3、is.close();5、异常处理的优点能将错误处理代码与“常规”代码相分离;能将错误沿调用栈向上传播;能按错误类型和错误对象分组,分门别类地加以处理(它是面向对象方式的错误处理方法);有利于程序的调试并且可以实现在程序出现异常时正常结束程序的流程。在用传统的语言编程吋,程序员只能通过函数的返冋值来发岀错误信息。这易于导致很多错误并且在很多应用情况下,还需要知道错误产生的内部细节。这些,是通过函数的返回值所无法达到的。(1)常规的错误处理的程序代码示例intreturnCode=saveData(oneData);if(retu

4、rnCode==0){〃没有产生岀错误}elseif(returnCode==1){〃产生出错误码为1的错误}elseif(returnCode==2){〃产牛出错误码为2的错误}(2)异常方式的错误处理try{oneObj.saveData(oneData);}catch(SomeOneExceptione){〃产生岀SomeOneException类型的错误catch(OtherOneExceptione){〃产生出OtherOneException类型的错误}6、Java的异常处理机制主要体现在“抛出异常”并“捕获异常”这

5、两个层次。7、抛出异常当程序执行过程中产生异常时,运行系统将抛岀异常类对象(它代表某一异常类型的错误事件)。&捕获异常用户程序或运行系统可以捕获该异常类对象(在函数的调用栈中查找能处理此异常事件的程序为止)并相应地给出处理的方法(代码)。9、如何捕获异常采用try,catch,finally语句块(try、catch>finally语句块及其用法如下)。10、try语句块它指定可能会产生异常的语句范围,也即为catch规定异常捕获的语句范围。编程格式:try{可能会产生异常的语句块;}11、catch语句块它指明需要捕获异常事件

6、的类型并相应地给出处理的方法(代码)。编程格式:catch(界常事件的类型对象名){〃并相应地给出处理的方法(代码);}12、多catch语句块编程时所应该注意的几点(1)应从特殊到一般进行匹配(先将特殊类型的异常事件放在前面,再一般类型的异常事件)。(2)try与catch之间不能有其他语句(不能被隔断)。try{}intx=l;//错误,不能被隔断catch(Exceptione){}13、finally语句块它指定一代码块,不管是否有异常产生或是否捕获住该异常,程序都从此处继续向后执行。从而达到提供统一的出口(如关闭文件、

7、清除系统资源等)。(1)try/catch/finally实例importjavaJo.*;classExceptionDemo{publicstaticvoidmain(Stringargs[]){FilelnputStreamfis=null;try〃划定程序出所可能产生的异常范围{System.out.printlnC'firstargumentis"+args[0]);fis=newFilelnputStreamC'text^);System.out.printlnCcontentoftextis:");intb;whi

8、le((b=fis.read()!=-1)){System.out.println((char)b);}}catch(FileNotFoundExceptione)//捕获程序中所可能产生的各种界常{System.out.println(e);}catch(IO

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。