Java新教材第六章面试题.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Java新教材第六章面试题

第6章 异常处理 159 6.1 异常概述 159 什么是异常? 答案:在程序的开发过程中产生的一些错误。 6.2 Java中的异常 160 6.2.1 Error/Exception层次关系 160 请简要介绍Error和Exception的层次关系。 答案:在Java中,异常对象分为两大类:Error和Exception。Error类和Exception类都是Throwable类的子类。Error类只有四个子类:AWTError、LinkageError、VirtualMachineError以及ThreadDeat。正如前面所述,它处理的是Java运行系统中的内部错误以及资源耗尽等情况,这种情况是程序员所无法掌握的,我们只有通知用户并安全退出程序的运行。而Exception的子类就很多了,可以大致将它的子类分为三类:有关I/O的IOException,有关运行时的异常RuntimeException以及其它的异常。RuntimeExcepiton异常是由于程序编写过程中的不周全的代码引起的,而IOException是由于IO系统出现阻塞等原因引起的。 error和exception有什么区别? 答案:error 表示恢复不是不可能但很困难的情况下的一种严重问题。比如说内存溢出。不可能指望程序能处理这样的情况。 exception 表示一种设计或实现问题。也就是说,它表示如果程序运行正常,从不会发生的情况。 6.2.2 异常示例 160 6.3 处理Exception 163 6.3.1 常见异常 163 引起RuntimeException异常的原因有很多,请举两个例子。 答案: RuntimeException常见的异常有哪些? 答案: 引起IOException异常的原因有很多,请举两个例子。 答案: IOException常见的异常有哪些? 答案: 运行时异常与一般异常有何异同? 答案:异常表示程序运行过程中可能出现的非正常状态,运行时异常表示虚拟机的通常操作中可能遇到的异常,是一种常见运行错误。java编译器要求方法必须声明抛出可能发生的非运行时异常,但是并不要求必须声明抛出未被捕获的运行时异常。 6.3.2 Java中的异常处理机制 163 6.3.3 通过try-catch-finally来处理异常 164 try {}里有一个return语句,那么紧跟在这个try后的finally {}里的code会不会被执行,什么时候被执行,在return前还是后? 答案:也许你的答案是在return之前,但往更细地说,我的答案是在return中间执行,请看下面程序代码的运行结果: public class Test { /** * @param args add by zxx ,Dec 9, 2008 */ public static void main(String[] args) { // TODO Auto-generated method stub System.out.println(new Test().test());; } static int test() { int x = 1; try { return x; } finally { ++x; } } } ---------执行结果 --------- 1 运行结果是1,为什么呢?主函数调用子函数并得到结果的过程,好比主函数准备一个空罐子,当子函数要返回结果时,先把结果放在罐子里,然后再将程序逻辑返回到主函数。所谓返回,就是子函数说,我不运行了,你主函数继续运行吧,这没什么结果可言,结果是在说这话之前放进罐子里的。 6.3.4 异常类的继承 168 6.3.5 访问异常信息 169 6.3.6 使用throws声明抛出异常 170 请写出throws抛出异常的思路和JVM对异常的处理方法。 答案:使用throws声明抛出异常的思路是:当前方法不知道应该何处处理这种类型的异常,该异常应该由上一级调用者处理。如果main方法也不知道应该如火如荼处理这种类型的异常,也可以使用throws声明抛出异常,该异常将交给JVM处理。JVM对异常的处理方法是:打印异常跟踪信息,并终止程序运行,这就是前面程序在遇到异常后自动结束的原因。 6.3.7 使用throw抛出异常 174 6.3.8 捕获异常和抛出异常结合使用 174 6.3.9 进行方法重写时对异常的处理

文档评论(0)

xy88118 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档