异常
在程序执行中,出现非正常情况导致jvm停止运行;
异常体系
Throwable中的常用方法:
public void printStackTrace() 打印异常详细信息;
public String getMessage() 获取异常原因;
public String toString() 获取异常类型和异常原因;
异常(Exception)的分类:
编译时期异常:checked异常,在idea编译时期就会检查,如果没有处理异常则编译失败;
运行时期异常:runtime异常,在运行期间出现的异常可以导致jvm停止工作;
异常的处理:
try、catch、finally、抛出异常throw(在方法内用)、声明异常throws(在fangfa)
要么捕获异常,要么抛出异常;
finally 代码块:常用语资源释放,主要不要return;
自定义异常:
在业务逻辑中出现的异常可以自己定义;
自定义一个编译期异常: 自定义类 并继承于 java.lang.Exception
自定义一个运行时期的异常类:自定义类 并继承于 java.lang.RuntimeException 。
// 业务逻辑异常
public class RegisterException extends Exception {
/**
* 空参构造
*/
public RegisterException() {
}
/**
*
* @param message 表示异常提示
*/
public RegisterException(String message) {
super(message);
}
}
推荐看https://www.cnblogs.com/gxk1314520jxx/p/10061687.html 这篇文章的自定义异常,设计比较好