Java异常处理
什么是异常
会打断程序进程的的代码
为什么需要处理异常
防止程序异常退出
异常分类
Error
java虚拟机无法处理的异常,一般是java虚拟机出现问题。
Exception
一般是程序员代码的问题
Runtime Exception
运行时异常
范围:
RuntimeException 及其子类
举例:
- 指针异常
特点:
编译期间不能发现,
要求:
在代码中可以使用try catch finally 处理
Checked Exception
受检异常
范围:
RuntimeException 之外的类及其子类
举例:
要求:
JAVA强制要求处理
处理异常
异常处理与抛出的使用形式
try-catch
注意:有多个catch时候,异常子类要在异常父类前面
try{ //可能发生异常的代码 } catch(//产生异常的类型)//可以有多个catch语句,catch可以嵌套使用(异常子类,要在异常父类前) { //异常处理 } catch(ArithmeticException e)//数学异常 { //异常处理 } catch(Exception e) { }
try-catch-finally
try{ //可能异常的代码 } catch(//异常类型) { //异常处理 } finally { //无论异常与否,无论异常是否捕获,都执行 }
抛出异常
抛出的含义就是向用户输出一句话,并且结束程序
(实际上是返回一个Exception类型的对象)
throw
必须写在方法中
if(n==0) { throw new Exception("除数不能为零"); } else { System.out.println(m/n);
throws
声明将抛出何种类型的异常,把异常交给该方法的调用者处理。
public void methodName(参数列表) throws Exceotion 类型列表 { //可能发生异常的代码 throw new Exception(); //或者调用能抛出异常的方法 }
自建异常类型
例如...
package Product; public class MyRuntimeException extends RuntimeException { public MyRuntimeException(String mesage) { super(mesage); } }
本文作者:kingwzun
本文链接:https://www.cnblogs.com/kingwz/p/15455677.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步