ImageVerifierCode 换一换
格式:PPT , 页数:28 ,大小:953KB ,
资源ID:12521803      下载积分:5 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/12521803.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(java异常处理精ppt课件.ppt)为本站上传会员【二***】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

java异常处理精ppt课件.ppt

1、单击此处编辑母版标题样式,*,单击此处编辑母版文本样式,第二级,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,.,*,异常处理,1,.,目标,理解异常的概念,运用 try 块、catch 块和 finally 块处理异常,运用多重 catch 块处理异常,运用嵌套 try/catch 块处理异常,运用关键字 throw 和 throws 处理异常,运用JAVA编写和使用自定义异常,2,.,生活中的异常,正常情况下,但是,异常情况迟早要发生!,一路畅通,堵车!,撞车!,3,.,程序中的异常,public class HelloAccp,public stat

2、ic void main(String args),System.out.print(请输入1至3之间的数字:);,Scanner in=new Scanner(System.in);,int courseCode=in.nextInt();/从键盘输入整数,switch(courseCode),case 1:,System.out.println(C#编程);,break;,case 2:,System.out.println(Java编程);,break;,case 3:,System.out.println(SQL基础);,输入:1,输出:C#编程,输入:abc,程序中断运行!,正常情况

3、异常情况:,4,.,什么是异常,异常就是在程序的运行过程中所发生的不正常的事件,它会中断正在运行的程序,绕行或者等待,请求交警解决,异常!,面对异常该怎么办呢?通常情况下,我们会这样处理:,程序运行,程序中断运行,堵车!,撞车!,生活中,我们会根据不同的异常进行相应的处理,而不会就此中断我们的生活,5,.,Exception,ArithmeticException,NullPointerException,Object,Throwable,Error,ThreadDeath,SQLException,RuntimeException,NumberFormatException,异常类的层次

4、结构,Throwable 具有两个子类,它们是,Exception:处理用户程序应当捕获的异常情况,Error:Error 类的异常为内部错误,因此在正常情况下不期望用户的程序捕获它们,AWTError,6,.,Java异常类,文件结束,EOFException,找不到文件,FileNotFoundException,I/O 异常的根类,IOException,数字转化格式异常,比如字符串到 float 型数字的转换无效,NumberFormatException,不能加载所需的类,ClassNotFoundException,方法接收到非法参数,IllegalArgumentExceptio

5、n,数组大小小于或大于实际的数组大小,ArrayIndexOutOfBoundException,尝试访问 null 对象成员,NullPointerException,许多,java.lang 异常的基类,RuntimeException,异常层次结构的根类,Exception,算术错误情形,如以零作除数,ArithmeticException,线程中断,InterruptedException,说 明,异 常,7,.,什么是异常处理,Java编程语言使用异常处理机制为程序提供了错误处理的能力,程序中预先想好了,对付异常的处理办法,异常!,程序运行,处理完毕,程序继续运行,对异常进行处理,8

6、Java中如何进行异常处理,Java的异常处理是通过5个关键字来实现的:,try,、,catch,、,finally,、,throw,、,throws,捕获异常,c,atch,try,finally,执行可能产生,异常的代码,捕获异常,无论是否发生异常,,代码总能执行,手动抛出异常,抛出异常,throw,声明异常,声明方法可能要,抛出的各种异常,throws,9,.,异常处理块的一般形式,try,/要监控错误的代码块,catch(Exception e),/Exception e 的异常处理程序,finally,/在 try 结束前要执行的代码块,10,.,try/catch块,try,

7、c,atch,try/catch,块后的代码段,public void method(),try,/代码段(此处不会产生异常),catch,(异常类型 ex),/对异常进行处理的代码段,/代码段,使用try/catch块捕获异常,分为三种情况:,第一种情况,11,.,try/catch块7-2,使用示例模拟第一种情况:,public class AccpException,public static void main(String args),System.out.print(请输入1至3之间的数字:);,Scanner in=new Scanner(System.in);,try,int

8、courseCode=in.nextInt();,switch(courseCode),case 1:,System.out.println(C#编程);,break;,case 2:,System.out.println(Java编程);,break;,case 3:,System.out.println(SQL基础);,catch,(Exception ex),System.out.println(输入不为数字!);,System.out.println(欢迎提出建议!);,输入:2,Java编程,欢迎提出建议!,控制台输出,12,.,try/catch块,try,c,atch,异常类型匹

9、配,try/,catch 块后的代码段,进入catch块,public void method(),try,/代码段 1,/产生异常的代码段 2,/代码段 3,catch,(异常类型 ex),/对异常进行处理的代码段4,/代码段5,使用try/catch块捕获异常,分为三种情况:,第二种情况,产生异常对象,程序继续执行,异常是一种特殊的对象,,类型为java.lang.Exception或其子类,发生异常,13,.,try/catch块7-4,使用示例模拟第二种情况:,public class AccpException,public static void main(String args)

10、System.out.print(请输入1至3之间的数字:);,Scanner in=new Scanner(System.in);,try,int courseCode=in.nextInt();,switch(courseCode),case 1:,System.out.println(C#编程);,break;,case 2:,System.out.println(Java编程);,break;,case 3:,System.out.println(SQL基础);,catch,(Exception ex),System.out.println(输入不为数字!);,ex.printSta

11、ckTrace();,System.out.println(欢迎提出建议!);,输入:abc,输入不为数字!,异常堆栈信息,欢迎提出建议!,控制台输出,14,.,printStackTrace的堆栈跟踪功能显示出程序运行到当前类的执行流程,public class AccpException,public static void main(String args),System.out.print(请输入课程代号(1至3之间的数字):);,Scanner in=new Scanner(System.in);,try,int courseCode=in.nextInt();,/此处代码省略,ca

12、tch,(Exception ex),System.out.println(输入不为数字!);,ex.printStackTrace();,System.out.println(欢迎提出建议!);,try/catch块,java.util.InputMismatchException,at java.util.Scanner.throwFor(Unknown Source),at java.util.Scanner.next(Unknown Source),at java.util.Scanner.nextInt(Unknown Source),at java.util.Scanner.nex

13、tInt(Unknown Source),at HelloAccp.main(,HelloAccp.java:8,),异常类型,异常堆栈信息,在此方法中抛出了异常,15,.,try/catch块,try,c,atch,异常类型不匹配,try/,catch 块后的代码段,程序中断运行,发生异常,public void method(),try,/代码段 1,/产生异常的代码段 2,/代码段 3,catch,(异常类型 ex),/对异常进行处理的代码段4,/代码段5,使用try/catch块捕获异常,分为三种情况:,第三种情况,产生异常对象,16,.,try/catch块7-7,使用示例模拟第三种

14、情况:,public class AccpException2,public static void main(String args),System.out.print(请输入课程代号(1至3之间的数字):);,Scanner in=new Scanner(System.in);,try,int courseCode=in.nextInt();,switch(courseCode),case 1:,System.out.println(C#编程);,break;,case 2:,System.out.println(Java编程);,break;,case 3:,System.out.pri

15、ntln(SQL基础);,catch,(NullPointerException ex),System.out.println(输入不为数字!);,System.out.println(欢迎提出建议!);,输入:abc,程序中断运行,17,.,try/catch/finally,在try/catch块后加入finally块,可以确保无论是否发生异常,finally块中的代码总能被执行,try 块,finally 块,catch 块,无异常,有异常,18,.,try/catch/finally 2-2,public class AccpException3,public static void

16、main(String args),System.out.print(请输入1至3之间的数字:);,Scanner in=new Scanner(System.in);,try,int courseCode=in.nextInt();,switch(courseCode),case 1:,System.out.println(C#编程);,break;,case 2:,System.out.println(Java编程);,break;,case 3:,System.out.println(SQL基础);,catch,(Exception ex),System.out.println(输入不为

17、数字!);,finally,System.out.println(欢迎提出建议!);,输入:2,Java编程,欢迎提出建议!,控制台输出,输入:abc,输入不为数字!,欢迎提出建议!,第一种情况:,无异常,第二种情况:,有异常,19,.,public void method(),try,/代码段,/产生异常(异常类型2),catch,(异常类型1 ex),/对异常进行处理的代码段,catch,(异常类型2 ex),/对异常进行处理的代码段,catch,(异常类型3 ex),/对异常进行处理的代码段,/代码段,多重catch块 2-1,一段代码可能会引发多种类型的异常,当引发异常时,会按顺序来查

18、看每个,catch 语句,并执行第一个与异常类型匹配的catch语句,执行其中的一条 catch 语句之后,其后的 catch 语句将被忽略,try,与异常类型1不匹配,try/,catch 块后的代码段,发生异常,产生异常对象,c,atch,与异常类型2匹配,c,atch,c,atch,程序继续执行,进入catch块,20,.,多重catch块 2-2,public class AccpException4,public static void main(String args),Scanner in=new Scanner(System.in);,try,System.out.print(

19、请输入S1的总学时:);,int totalTime=,in.nextInt(),;/总学时,System.out.print(“请输入S1的课程数目:);,int totalCourse=,in.nextInt(),;/课程数目,System.out.println(“S1各课程的平均学时为:,+,totalTime/totalCourse,);,catch,(,InputMismatchException,e1),System.out.println(输入不为数字!);,catch,(,ArithmeticException,e2),System.out.println(课程数目不能为零

20、);,catch,(,Exception,e),System.out.println(发生错误:+e.getMessage();,输入:270 H,在安排catch语句的顺序时,首先应该捕获最特殊的异常,然后再逐渐一般化,即先子类后父类,输出:,输入不为数字!,进入第一个,catch块,输入:270 0,输出:,课程数目不能为零!,进入第二个,catch块,21,.,抛出异常,如果在当前环境无法解决一个异常,就要将其抛出,把异常交给调用者处理,public class AccpTeacher,private String id;/教员编号,长度应为7,public void setId(St

21、ring pId),/判断教员编号的长度是否为7,if(pId.length()=7),id=pId;,else,throw,new IllegalArgumentException(参数长度应为7!);,public class AccpTeacherTest,public static void main(String args),AccpTeacher teacher=new AccpTeacher();,try,teacher.setId(088);,catch,(IllegalArgumentException ex),System.out.println(ex.getMessage

22、);,抛出异常,捕获异常,参数长度应为7!,控制台输出,22,.,声明异常,public class AccpTeacher,private String id;/教员编号,长度应为7,public void setId(String pId),throws,IllegalArgumentException,/判断教员编号的长度是否为7,if(pId.length()=7),id=pId;,else,throw,new IllegalArgumentException(参数长度应为7!);,public class AccpTeacherTest,public static void mai

23、n(String args),AccpTeacher teacher=new AccpTeacher();,try,teacher.setId(088);,catch,(IllegalArgumentException ex),System.out.println(ex.getMessage();,由调用者捕获异常,声明该方法可能会产生异常,23,.,用户自定义异常,自定义异常概念,使用自定义异常的时候,JavaAPI提供的内置异常不一定总能捕获程序中发生的所有错误。有时会需要创建用户自定义异常,自定义异常需要继承,Exception,及其子类,24,.,用户自定义异常,创建一个类继承,Exc

24、eption 或其子类,为该异常类添加构造方法,在一个方法中使用throw抛出异常,在另一个方法中捕获并处理异常,class MyException extends Exception,private int i;,MyException(int a),i=a;,public String toString(),return i+大于10啦;,25,.,用户自定义异常 2-3,public class ExceptionDemo,static void go(int a)throws MyException,System.out.println(a=+a);,if(a 10),throw ne

25、w MyException(a);,System.out.println(正常结束);,public static void main(String args),try,go(1);,go(20);,catch(MyException e),System.out.println(捕获异常:+e);,控制台输出,a=1,正常结束,a=20,捕获异常:20大于10啦,26,.,总结,请给出下列Java代码的运行结果,public class Test,public static void main(String args),new Test().test();,public void test()

26、try,int arr=new int3;,arr3=2;,System.,out,.println(try);,catch(ArrayIndexOutOfBoundsException e),System.,out,.println(catch 1);,catch(Exception e),System.,out,.println(catch 2);,finally,System.,out,.println(finally);,控制台输出,catch 1,finally,27,.,总结,请给出下列Java代码的运行结果,public class TestE,public static void main(String args),try,test();,catch(Exception e),System.out.println(exception);,System.out.println(end);,public static void test()throws Exception,try,throw new Exception();,finally,System.out.println(finally);,控制台输出,finally,exception,end,28,.,

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服