千锋教育-做有情怀、有良心、有品质的IT职业教育机构

Java入门学习之如何解决Java中出现的异常

时间:2017-08-31 10:06:26  |  来源:千锋教育郑州校区  |  作者:

   异常处理不单单是知道语法这么简单,处理 Java 中的异常情况并不是个轻松的话题,对于很多Java入门的人来说,他们的困惑是什么样的异常需要如何处理,今天千锋郑州java培训就来简单说一下如何解决Java中出现的异常。

Java异常.jpg

  1、特定的异常

  你引发的异常越具体越好,要尽可能地提供多信息,确保你的 API 容易理解。 这样,调用你的方法的人才能好地处理异常,或者避免在检查上浪费多余的时间。

  解决方法:要想办法找到那个合适你期望事件的类,比如引发一个 NumberFormatException 比IllegalArguementException 要好,请避免引发一个不明确的异常。

  2、清理 Finally 块中的资源或使用 Try-With-Resource 语句

  在try块中使用资源时常发生,比如 InputStream,是需要在用完之后关掉的,不过你因为某个原因添加了try,其中调用的一个或多个方法可能就会引发异常,甚至有可能是你自己引发了异常,此时就无法运行到try的结尾,结果资源没法被关掉。

  解决方法就是把清理资源的代码都放在 finally 块中,或者使用 Try-With-Resource 语句。如果你使用的资源实现接口是 AutoCloseable,就可以用这个语句,多数Java 标准资源都这么做。当你在 try 中打开资源,它可以在 try 执行完毕后或异常处理完后自动关闭资源。

  3、用描述性消息引发异常

  如果你引发了一个特定的异常,它的类名就可能已经描述了错误类型,所以你也不用再提供多信息了。NumberFormatException 是个比较好的例子,当你在给一个字符串提供了错的格式,类 java.lang.Long 的构造函数就会引发这个异常。

  4、优先抓住具体的异常:多数 IDE 可以帮助你实现这一条。 当你在尝试优先捕获较少特定的异常时,它们会报告一个无法访问的代码块。

  5、别去抓可抛出的对象:可抛出(throwable)是所有异常和错误的超类,虽然你可以在 catch 语句中使用,但是你永远都不应该用它。

新开班

  • ▪ Python培训班 03.26 抢座
  • ▪ HTML5培训班 03.12 抢座
  • ▪ JavaEE培训班 03.26 抢座
  • ▪ Python培训班 02.26 爆满
  • ▪ JavaEE培训班 01.22 开班
  • ▪ HTML5培训班 12.25 开班
  • ▪ HTML5培训班 11.20 开班
  • ▪ UI交互设计培训 11.20 开班
  • ▪ JavaEE培训班 11.20 开班
  • ▪ HTML5培训班 10.09 爆满
  • 郑州地址:郑州市二七区航海中路60号海为科技园C区10层、12层
    咨询电话:0371-55911950 400-654-7778
    面授课程:iOS课程培训、Android课程培训、HTML5课程培训、UI课程培训
  • 北京天丰利校区:北京市海淀区宝盛北里西区28号天丰利商城4层
    北京沙河校区:北京市昌平区沙阳路18号北京科技职业技术广场服务楼2层、南区服务楼2层
    咨询电话:400-654-7778 010-82790226-801
    面授课程:iOS培训、Android培训、HTML5培训、UI培训、PHP培训、JavaEE培训、好程序员
  • 深圳科技园校区:深圳市南山区科苑南路高新技术产业园R3-B栋5层
    深圳大学城校区:深圳市南山区留仙大道1201号大学城创客小镇16栋2楼、3楼
    深圳西部硅谷校区:深圳市宝安区宝安大道5010号西部硅谷B座A605-619
    咨询电话:0755-86681178/9-801
    面授课程:iOS培训、Android培训、HTML5培训、UI培训、PHP培训、JavaEE培训、好程序员
  • 上海地址:上海市宝山区同济支路199号智慧七立方3号楼2-4层
    咨询电话:400-627-7899 021-65025129-602
    面授课程:iOS课程培训、Android课程培训、HTML5课程培训、UI课程培训、好程序员
  • 成都旅游校区:成都市一环路西二段17号四川旅游青羊校区内
    成都华立校区:成都一环路西二段17号华立大厦3楼
    咨询电话:028-83178771 028-61967740
    面授课程:iOS课程培训、Android课程培训、HTML5课程培训、UI课程培训
  • 广州地址:广州市天河区元岗路310号智汇park创意园E座5层
    咨询电话:020-22119207 400-654-7778
    面授课程:iOS课程培训、Android课程培训、HTML5课程培训
  • 大连地址:大连市甘井子区软件园路2号B8座二楼
    咨询电话:0411-39026086 400-654-7778
    面授课程:iOS课程培训、Android课程培训、HTML5课程培训
  • 武汉地址:武汉市东新区光谷大道77号金融港B26栋9楼
    咨询电话:027-59905909 027-59905908 027-59905902
    面授课程:iOS课程培训、Android课程培训、HTML5课程培训
  • 西安南二环校区:西安市二环南路西段60号永安大厦4层
    西安科技园校区:西安市雁塔区高新六路52号立人科技园C座西区4层
    咨询电话:029-85260160 029-85261030 029-85260960
    面授课程:iOS课程培训、Android课程培训、HTML5课程培训
  • 杭州地址:浙江省杭州市江干区九堡旺田书画城A座4层
    咨询电话:0571-86893632 010-82790226/7-801
    面授课程:iOS课程培训、Android课程培训
  • 青岛校区地址:青岛市市南区金坛路17号青岛职业技术南校区实训楼A4层
    咨询电话:0532-80910752/3 010-82790226/7-801
    面授课程:iOS课程培训、Android课程培训、UI课程培训
  • 千锋教育微信号
    扫描加好友