IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Java知识库 -> 关于java异常 -> 正文阅读

[Java知识库]关于java异常

**Throwable类是所有错误和java中异常的超类。只有当对象是此类(或其子类之一)的实例时,才能通过java虚拟机或者Javathrow语句抛出。

Exception和Error都是继承了Throwable类,它们是异常处理机制的基本组成类型。

Exception是程序正常运行中,可以预料的意外情况,可能并且应该被捕获,进行相应处理。

关于检查性和非检查性异常,不用深究理解,你只要懂得,平常有那么几种异常就好。
常见的检查性异常:
IOException
SQLException

ClassNotFoundException找不到某个类时,会抛出该异常,反射时会用到。

InterruptedException当阻塞方法收到中断请求的时候就会抛出中断异常。

常见的非检查性异常:

NullPointerException空指针引用异常,试图调用空对象的方法或者属性时,抛出该异常。

ArithmeticException 算术运算异常

ClassCastException类型转换异常,当试图将对象强制转换为不是实例的子类时,抛出该异常

IndexOutOfBoundsException 下标越界异常
NumberFormatException数字格式异常

try {可能出异常的代码}catch(异常类型 异常名){你解决的做法}finally {}

可以catch很多种异常,你也可以写很多种对应解决的做法,只不过catch异常的时候要注意次序,异常超类不能在子类前,超类都抛完了,子类没意义了。你解决的做法,可以打印这个异常(e.printstackTrace),也可以什么都不写,生吞了它。

无论异常是否发生,finally里的内容都会执行,发生异常时,先执行finally,再执行catch。
throws(一般用在方法名后)
和throw(用在方法内部,new一个异常抛出去),抛异常的注意点和try-catch差不多,不要直接把超类抛出去。

程序最终会采用finally代码块中的return语句进行返回,而直接忽略try语句块中的return指令

对于异常的使用有一个不成文的约定:尽量在某个集中的位置进行统一处理,不要到处的使用try-catch,否则会使得代码结构混乱不堪。按照
我们程序员的惯性认知:当遇到return语句的时候,执行函数会立刻返回。但是,在Java语言中,如果存在fnally就会有例外。除了return语句,try代码块中的break或continue语句也可能使控制权进入fnally代码块。请尽量不要在
try代码块中调用return、break或continue语句。
忠告:

策一,尽量不要捕获类似Exception这样的通用异常,而是应该捕获特定异常。

第二,不要生吞(swallow)异常

Error是指在正常情况下,不大可能出现的情况,绝大部分的Error都会导致程序(比如JVM自身)处于非正常的,不可恢复状态。比如内存溢出错误(OutOfMemoryError),栈内存溢出错误(StackOverflowError),找不到class定义的错误(NoClassDefFoundError)等。

**

  Java知识库 最新文章
计算距离春节还有多长时间
系统开发系列 之WebService(spring框架+ma
springBoot+Cache(自定义有效时间配置)
SpringBoot整合mybatis实现增删改查、分页查
spring教程
SpringBoot+Vue实现美食交流网站的设计与实
虚拟机内存结构以及虚拟机中销毁和新建对象
SpringMVC---原理
小李同学: Java如何按多个字段分组
打印票据--java
上一篇文章      下一篇文章      查看所有文章
加:2022-01-01 13:44:53  更:2022-01-01 13:47:57 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 8:38:41-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码