今天的面试题,希望帮忙解答 被问及为什么要有try-catch。回答为是为了捕获异常。然后他就问为什么要捕获异常。我就一下子懵了,从没想过这个问题然后草草的回家就说有些问题java虚拟机在编译器不会发现有异常,只有在执行期才会发现,所以需要程序员自己去捕获。不知道这个说的对不对。大家帮帮忙吧,先谢过 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 其实程序,说到底,就是人的思维的反应,人的生活中为啥有强烈的,防患于未然意识,也正是这种意识,在程序中体现出来就是所谓的try,catch. 捕获异常的原因有很多种,列举如下:1、重写的方法没有throws受检异常,如果重写的时候遇到受检异常必须捕获,然后做相应处理,如重写Runnable的run2、将异常转换为用户友好的信息。比如捕获到数据库异常后,重新抛出一个信息让常人易懂的异常3、记录日志,即在catch里记录异常相关日志4、如果出现的异常对外不重要且自己能处理,那么在catch中处理。比如转换某个配置文件的配置为int,结果转换失败,使用默认值。5、作为业务逻辑的一部分(极不推荐)6、一些重试操作里需要捕获异常,比如某个操作若失败,可重试3次,在循环中要捕获可能的异常以避免无法重试。7、一些可以swallow的异常。比如实现一个closeConnectionQuietly,关闭ResultSet,Statement和Connection,如果调用它们的close出现异常,打算不去管它,就要catch掉它们。但一般会记录日志。诸如此类,等等等等 异常分为两种:1、RuntimeException2、Exception对于RuntimeException就像是你开车时路上的小沙子,对于开车小沙子不会对开车造成什么影响,没有必要先要把沙子打扫干净再开车。所以没有不要捕获。对于Exception,就像是在山间开车时山上掉下来的石头,我们没有能力阻止,但是对于这种意外,我们应该进行考虑(进行捕处理获)。 怎么从txt中读取文件并且复制给一个字符串 关于JAVA继承问题 用批处理一次向数据库中插入5000条数据是否合适? JTextArea 求助 虚心请教~~~小弟实在没法了........ 奇怪的程序,输入和输出不一致 这一段是哈意思??谢谢!! 新手询问关于static和类实例的疑问?(急,在线等待) 请问:obiwang,ender,badprogrammer,qzg168等在线朋友! java多线程中,锁不起作用? 笨人新手求大神给我讲讲下面while循环,下面程序中的count为什么为3 这是什么异常?
1、重写的方法没有throws受检异常,如果重写的时候遇到受检异常必须捕获,然后做相应处理,如重写Runnable的run
2、将异常转换为用户友好的信息。比如捕获到数据库异常后,重新抛出一个信息让常人易懂的异常
3、记录日志,即在catch里记录异常相关日志
4、如果出现的异常对外不重要且自己能处理,那么在catch中处理。比如转换某个配置文件的配置为int,结果转换失败,使用默认值。
5、作为业务逻辑的一部分(极不推荐)
6、一些重试操作里需要捕获异常,比如某个操作若失败,可重试3次,在循环中要捕获可能的异常以避免无法重试。
7、一些可以swallow的异常。比如实现一个closeConnectionQuietly,关闭ResultSet,Statement和Connection,如果调用它们的close出现异常,打算不去管它,就要catch掉它们。但一般会记录日志。诸如此类,等等等等
1、RuntimeException
2、Exception
对于RuntimeException就像是你开车时路上的小沙子,对于开车小沙子不会对开车造成什么影响,没有必要先要把沙子打扫干净再开车。所以没有不要捕获。
对于Exception,就像是在山间开车时山上掉下来的石头,我们没有能力阻止,但是对于这种意外,我们应该进行考虑(进行捕处理获)。