服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - Java教程 - Java:详解Java中的异常

Java:详解Java中的异常

2021-12-06 12:44weixin_45750514 Java教程

这篇文章主要介绍了java中的异常,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

Java异常

Java中的异常:又称例外,是一个在程序执行期间发生的事件,它中断正在执行程序的正常指令流

异常的分类:Throwable:类是java语言中所有错误或异常的超类,这意味着只要指示错误或异常,那么肯定是thrawble子类的实例,但是事实上由于错误异常内容过于庞大,所以设计人员将它们分开来,这就是thrawble的两个子类,Error和Exception

  • Error类是负责错误,它指程序运行的时候遇到硬件或操作系统的错误,这些错误都是严重并且致命的,是依靠程序自身无法解决的。
  • Exception是运行时的错误,它可以被捕获并处理(运行时异常:RuntimeException类及其子类异常,这些异常都是不检查异常,程序中可以选择捕获处理,也可以不处理,这些异常一般由程序逻辑错误引起,程序应该从逻辑角度尽可能避免这类异常的发生。非运行时异常:RuntimeException以外的异常,类型上都属于Exception类及其子类,从语法角度上讲是必须处理的异常,如果不处理,程序就不能通过编译)

常见异常

Java:详解Java中的异常

异常的处理 :通过5个关键字控制 try catch throw throws finally

  • 捕获异常 try里面的代码越少越好 catch中必须含有内容,哪怕是简单的提示

try{可能出现异常的代码}catch(异常的类名 变量名){针对异常的处理方式}finally{释放资源}

try{可能出现异常的代码}catch(异常的类名 变量名){针对异常的处理方式}

try{可能出现异常的代码}catch(异常的类名1 变量名){针对异常的处理方式}catch(异常的类名2 变量名){针对异常的处理方式}...

  • 编译期异常和运行期异常

运行期异常:代码不够严谨,需要修改代码

编译期异常:必须处理,否则编译不通过

  • Throwable

String getMessage() 详细信息字符串

String toString() 返回异常的简短描述

  • throws 抛出异常 必须写在方法声明的后面 尽量不要在主方法上抛出异常

throws 异常类名

  • throw 在方法内部主动抛出的异常

throw 异常的对象

  • finally 保证资源一定得到释放

try{可能出现异常的代码}catch(异常的类名 变量名){针对异常的处理方式}finally{释放资源}

  • 自定义异常

继承Exception(编译期异常)

继承RunTimeException(运行期异常)

throw和throws的区别

1.前者写在方法内部 后者写在方法声明的后面

2.前者后面跟的是异常对象 后者跟的是异常类名

3.前者后面只能是一个异常对象 后者可以跟多个一场类名

final、finally、finalize的区别

final

  • 修饰类 类不能被继承
  • 修饰方法 方法不能被覆盖
  • 修饰变量 变量为常量只能赋值一次

finally:异常处理中的组成部分,作用是释放资源,放在finally中的代码一定会执行

finalize:是Object类中的方法,用于垃圾回收

总结

本篇文章就到这里了,希望能给你带来帮助,也希望您能够多多关注服务器之家的更多内容!

原文链接:https://blog.csdn.net/weixin_45750514/article/details/119804612

延伸 · 阅读

精彩推荐
  • Java教程Java8中Stream使用的一个注意事项

    Java8中Stream使用的一个注意事项

    最近在工作中发现了对于集合操作转换的神器,java8新特性 stream,但在使用中遇到了一个非常重要的注意点,所以这篇文章主要给大家介绍了关于Java8中S...

    阿杜7482021-02-04
  • Java教程小米推送Java代码

    小米推送Java代码

    今天小编就为大家分享一篇关于小米推送Java代码,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧...

    富贵稳中求8032021-07-12
  • Java教程xml与Java对象的转换详解

    xml与Java对象的转换详解

    这篇文章主要介绍了xml与Java对象的转换详解的相关资料,需要的朋友可以参考下...

    Java教程网2942020-09-17
  • Java教程Java实现抢红包功能

    Java实现抢红包功能

    这篇文章主要为大家详细介绍了Java实现抢红包功能,采用多线程模拟多人同时抢红包,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙...

    littleschemer13532021-05-16
  • Java教程20个非常实用的Java程序代码片段

    20个非常实用的Java程序代码片段

    这篇文章主要为大家分享了20个非常实用的Java程序片段,对java开发项目有所帮助,感兴趣的小伙伴们可以参考一下 ...

    lijiao5352020-04-06
  • Java教程Java使用SAX解析xml的示例

    Java使用SAX解析xml的示例

    这篇文章主要介绍了Java使用SAX解析xml的示例,帮助大家更好的理解和学习使用Java,感兴趣的朋友可以了解下...

    大行者10067412021-08-30
  • Java教程升级IDEA后Lombok不能使用的解决方法

    升级IDEA后Lombok不能使用的解决方法

    最近看到提示IDEA提示升级,寻思已经有好久没有升过级了。升级完毕重启之后,突然发现好多错误,本文就来介绍一下如何解决,感兴趣的可以了解一下...

    程序猿DD9332021-10-08
  • Java教程Java BufferWriter写文件写不进去或缺失数据的解决

    Java BufferWriter写文件写不进去或缺失数据的解决

    这篇文章主要介绍了Java BufferWriter写文件写不进去或缺失数据的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望...

    spcoder14552021-10-18