Java异常处理
2022-08-23 17:47:51 15 举报
AI智能生成
Java中的异常总结
作者其他创作
大纲/内容
体系结构
运行时异常
编译器不强制要求强制处理的异常
例如编程时逻辑错误等,通常不处理,处理可能影响可读性及运行效率
编译时异常
编译器要求必须处理的异常
编译器要求Java程序必须捕获或声明所有编译时异常
常见异常
java.lang.RuntmeException
java.io.IOExeption
java.lang.ClassNotFoundException
java.lang.InterruptedException
java.io.FileNotFoundExecption
java.sql.SQLException
处理机制一 try-catch-finally
抓抛模型
出现异常会生成异常类对象,提交Java运行时系统,称为抛出(throws)异常
异常对象的生成
由虚拟机自动生成
手动创建
异常抛给上层方法,直到处理
如果抛出异常是IOExeception等类型非运行时异常必须捕获,否则编译错误
RuntimeException类或它的子类即使没有try和catch捕获,Java自己也能捕获且编译通过
手动抛出异常
异常可用系统自动抛出也可人工创建并抛出
先生成异常类对象,然后通过throw语句实现抛出操作
抛出异常必须是Throwable或其子类实例
定义
将程序执行中发生的不正常称为“异常”
Java中的异常事件
Error:
Java虚拟机无法解决的严重问题
Exception:
其他因编程或偶然的外在因素导致的一般性问题,可以使用针对性代码处理
空指针访问
试图读取不存在的文件
网络连接中断
数组角标越界
解决方法
遇到错误就终止程序
编写程序时考虑错误检测、错误消息提示,以及错误的处理
处理机制二 throws+异常类型
显式声明抛出异常,该方法不处理由调用者处理
throws语句可声明抛出异常列表,throws异常类型可以是方法中产生异常类型,也可以是它的父类
用户自定义异常类
都是RuntimeException的子类
编写几个重载构造器
提供serialVersionUID
通过throw抛出
异常类名字最重要,出现异常根据名字判断异常类型
⚠用户自己异常类必须继承现有异常类
0 条评论
下一页