- 1、本文档共16页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
12异常与设计模式
12异常与设计模式12.1默写接口的特点?声明接口的关键字?抽象类的特点?抽象方法的特点?关键字?构造方法的概念?与普通方法的区别Static与非static的区别?什么是方法重写?什么是方法重载?多态的前提条件?哪两种使用方式?12.2为什么需要异常处理异常是正常情况中特殊情况,有可能发生,也有可能不发生publicstaticvoid main(String[] args) {Scanner input=new Scanner(System.in);System.out.println(请输入被除数:);int numA=input.nextInt();System.out.println(请输入除数:);int numB=input.nextInt();System.out.println(String.format(%d/%d=%d, numA,numB,numA/numB));System.out.println(谢谢使用本程序);}正常情况:出现异常的时候输入的数据类型与程序期望的数据类型不一致最后的一行,告诉我们是在程序中异常出现的行数第一行,告诉我们是异常的类型除数为0,在数学中,除数不能为0没有异常机制时,使用if-else解决问题publicstaticvoid main(String[] args) {Scanner input=new Scanner(System.in);System.out.println(请输入被除数:);int numA;if (input.hasNextInt()) {numA=input.nextInt();System.out.println(请输入除数:);int numB;if (input.hasNextInt()) {numB=input.nextInt();if (numB==0) {System.out.println(除数不能为0);}else{System.out.println(String.format(%d/%d=%d, numA,numB,numA/numB));System.out.println(谢谢使用本程序);}}else{System.out.println(对不起,您输入的有误,请输入整数!);}}else{System.out.println(对不起,您输入的有误,请输入整数!);}}弊端:1、代码臃肿2、程序员要花很大精力“堵漏洞”3、程序员很难堵住所有“漏洞”12.3java处理异常的5个关键字异常的组合形式第一种try…catchtry {System.out.println(请输入被除数:);int numA=input.nextInt();System.out.println(请输入除数:);int numB=input.nextInt();System.out.println(String.format(%d/%d=%d, numA,numB,numA/numB));System.out.println(谢谢使用本程序);} catch (Exception e) {//e.printStackTrace();//打印异常的堆栈信息System.out.println(出错了);}第二种组合try—finallypublicstaticvoid main(String[] args) {Scanner input=new Scanner(System.in);try {System.out.println(请输入被除数:);int numA=input.nextInt();System.out.println(请输入除数:);int numB=input.nextInt();System.out.println(String.format(%d/%d=%d, numA,numB,numA/numB));} finally{System.out.println(谢谢使用本程序);}}第三种组合 try-catch..finallytry {System.out.println(请输入被除数:);int numA=input.nextInt();System.out.println(请输入除数:);int numB=input.nextInt();System.out.println(String.format(%d/%d=%d, numA,numB,numA/numB));} catch (Exception e) {System.out.println(出错了);}finally{System.out.println(谢谢使用本程序!);}12.4异常的执行情况(1)正常情况红色的代码是程序所执行的代码try {Syste
文档评论(0)