异常常见形式与解决

异常常见形式与解决

异常就是用来描述代码中出现的问题
就是程序出现了不正常的情况.程序在执行过程中,出现的非正常的情况,最终会导致JVM的非正常终止.
注意:语法错误不算异常体系中



异常

概述

异常就是程序出现了不正常的情况,当代码中出现了异常,就会在这里创建一个异常对象

体系

thorwable:
(1).Error为严重错误,硬件方面的,不需要我们处理
(2).Exception 异常(编译时期异常/受检异常)
RuntimeException异常为运行时异常(非受检异常)
除RuntimeException之外的异常为编译时异常
请添加图片描述
编译时异常,是在编译成class文件时必须要处理的异常,也称作受检异常
运行时异常,在编译成class文件不需要处理,在运行字节码文件时可能出现的异常.也称作非受检异常

jvm虚拟机默认处理方式

(1).将异常信息以红色字体展示在控制台上
提示程序出问题的原因和问题
(2).停止程序运行

手动处理

(1).throws 当我们不用自己处理,或自己无法处理的时候,可以将异常的处理权交给调用者处理;
格式:throws 异常类名;
注意:这个格式是写在方法的定义处,表示声明一个异常
编译时异常因为在编译时就会检查,所以必须要写在方法后面显示声明 运行时异常因为在运行时才会发生,所以在方法后面可以不写
(2).throw 在方法内,手动将异常抛出,有方法体中的语句处理,下面的程序就不执行了
格式:throw new 异常();
注意:这个格式在方法内,表示当前代码手动抛出一个异常,下面的代码就不会在执行了
使用方法:
1.在方法中,当传递的参数有误,没有继续运行下去的意义了,则采取抛出处理,表示让该方法结束运行
2.告诉调用者出现了问题
(3).try{}catch(捕捉异常的类型){}
由于我们自身的问题而引发的异常,我们可以使用这种方式处理,一旦处理之后,程序可以继续运行
格式:try{
可能出现异常的代码;
}catch(异常类名 变量名){
异常处理的代码块;
}
注意事项:throw和throws的区别
throw用在方法体中,用于真正的抛出一个异常对象,而throws用在方法声明上,用于"提醒"调用者,我们方法内部有可能会出现什么问题;

异常常见方法

getMessage():返回throwable的详细消息字符串
toString():返回可抛出的简短描述
printStackTrace():把异常的错误信息打印到控制台

自定义异常

意义

起名字为了异常信息和调用者见名知意

步骤

(1).继承Java已经提供的异常类;一般使用RuntimeException
(2).写上构造方法即可
定义异常类,写继承关系,写空参构造,写有参构造

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值