异常的核心类Throwable
程序员文章站
2022-04-17 17:04:29
...
java异常的核心是Throwable,其他的如Error和Exception都是继承的这个类
里面有个核心参数是detailMessage,记录异常信息,getMessage核心方法,获取这个参数的值,我们可以自己定义自己的异常类,去继承这个Exception就可以了,方法基本上,用父类的构造方法就OK,所以这么看异常是不是很easy
自己封装的业务异常信息,可以直接跑出给用户看,
用的时候throw new BussinessException("业务不正确");
用的时候捕获这个异常,e.getMessage()就可以获得业务异常,直接给用户看
里面有个核心参数是detailMessage,记录异常信息,getMessage核心方法,获取这个参数的值,我们可以自己定义自己的异常类,去继承这个Exception就可以了,方法基本上,用父类的构造方法就OK,所以这么看异常是不是很easy
package com.natsu; /** * java异常体系的核心 * @author huangqun * */ public class Throwable { /** * 详细的异常信息 */ private String detailMessage; /** * 异常实体 默认是本身 */ private Throwable cause = this; public Throwable(String message) { this.detailMessage = message; } public Throwable(String message, Throwable cause) { this.detailMessage = message; this.cause = cause; } public Throwable(Throwable cause) { this.detailMessage = (cause == null ? null : cause.toString()); this.cause = cause; } /** * 获取异常详细信息 常用方法 */ public String getMessage() { return this.detailMessage; } public String toString() { String name = this.getClass().getName(); String message = getMessage(); return (message != null) ? (name + ": " + message) : name; } public static void main(String[] args) { Throwable e = new Throwable("异常信息是。。。。"); System.out.println(e.getMessage()); Throwable e1 = new Throwable(e); System.out.println(e1.getMessage()); Throwable e2 = new Throwable("新的异常信息", e); System.out.println(e2.getMessage()); }
自己封装的业务异常信息,可以直接跑出给用户看,
用的时候throw new BussinessException("业务不正确");
用的时候捕获这个异常,e.getMessage()就可以获得业务异常,直接给用户看
package com.natus; /** * 业务异常类, * 必须填写业务的错误信息. * 错误信息是可以直接给用户看的. * */ public class BussinessException extends Exception { private static final long serialVersionUID = -3591382539768191631L; public BussinessException(String message) { super(message); } public BussinessException(String message, Throwable cause) { super(message, cause); } }
上一篇: 视觉SLAM理论与实践5