Java异常处理机制
来源:互联网 发布:人工智能性爱系统 编辑:程序博客网 时间:2024/05/21 07:00
Java对于异常的定义的结构是 Throwable类,派生出两个子类:error 和 exception
下面介绍这两个子类:
error : 系统级别出现的错误,通常是JVM出现的异常,这类错误是程序不可控的。
exception:程序级别的错误。通常我们称为异常。这一类问题是可以通过程序解决的。
Java中解决异常的步骤:发现异常 ——捕获异常—— 解决异常。
try语句的语法格式:
try{
可能出现错误的代码片段
}
catch语句:用于捕获try中出现的异常,并实现解决方式。
try{
}catch(Exception_type e){
解决异常的代码片段
}
catch语句可以出现多次。catch中列举的异常类型应本着子类在先父类在后的原则。
throw语句:主动抛出异常。
语法:throw e; //e为某个异常的实例
使用throw主动抛出异常的情况:
1. 分清责任。当调用该方法去处理问题的过程中出现错误,往往我们会将错误抛出,因为调用方有着决策上的权力。我们应当通知在这个环节出现的错误,以便调用方捕获并解决。
2. 执行逻辑的过程中,出现了一个符合语法规则但是不符合业务逻辑要求的情况时,我们也可以当做异常去处理,这时我们也会主动抛出一个异常。
throws声明:throws用于声明方法要抛出的异常类型。
调用被throws声明的方法时,需要强制捕获该方法声明的抛出的异常。
通常在方法中,我们使用throw主动抛出的异常类型都要声明在throws中。只有RuntimeException及其子类异常在throw抛出时,方法不需要将其异常类型定义在throws中。
RuntimeException及其子类属于非检查异常,指的是在编译期间,不检查这类异常的捕获。
常见的RuntimeException的子类: NullPointerException ArrayIndexOutofBoundsException ClassCastException NumberFormatException
下面说一下重写方法时的异常处理:
如果在继承一个类时,父类的方法声明了throws抛出指定异常,那么子类在重写该方法时应注意:
1. 可以不指定throws
2. 可以throws父类方法异常的子类异常
3. 可以throws父类throws的部分异常
但是不能:
1. throws父类方法throws的父类异常
2. throws 父类方法中没有throws的异常
- java异常处理机制
- java异常处理机制
- java异常处理机制
- Java-异常处理机制
- java异常处理机制
- Java异常处理机制
- java 异常处理机制
- java异常处理机制
- Java异常处理机制
- Java异常处理机制
- JAVA异常处理机制
- Java异常处理机制
- Java异常处理机制
- Java异常处理机制
- Java异常处理机制
- Java异常处理机制
- JAVA异常处理机制
- Java异常处理机制
- uip协议栈移植到window
- javaEE开发之获取spring管理的bean工具类
- 从游戏运行过程来分析斗地主设计思路
- fmt:formatDate的输出格式
- “好友”不给我点“赞”
- Java异常处理机制
- 实在、接地气,迄今见过最好的职业规划的文章
- 可变参数问题
- OpenGL采用显示列表显示文字完整范例
- py 函数
- 写给大家看的编程规范
- 删除文件每行第一个点号及前面的数字
- 最高波特率的瓶颈
- EL表达式格式化日期