自定义异常的用法

日常开发中,如果需要用异常的方式更清楚的表现出程序中的逻辑问题,则需要自定义异常。理论上自定义异常一般不会影响程序运行,就算影响也是开发者逻辑设计的一部分。

我们知道,throwable类是所有异常的基类,只有throwable及其子类才可以被抛出。throwable有两个子类分别是Exception和Error。Exception是需要被捕获并处理的,而Error因为难以被预料所以不便于被捕获也不需要被捕获。所以,如果要自定义异常,需要继承throwable类或者它的子类Exception类,一般是继承Exception类。

自定义异常的用法_第1张图片

这是最简单的自定义异常,有参构造方法中仅仅调用了Exception父类的super()打印出异常信息。有时根据业务需要,可以在自定义异常中定义私有变量,比如错误代码,异常原因等,并创建getter/setter方法,在构造方法中可以实现特定的处理逻辑。应用中catch到该自定义异常时,可以使用e.get()方法来获得自定义异常中更多信息。

自定义异常的应用也很简单,比如:先自定义一个含有异常逻辑的方法,即满足一定逻辑就throw new MyException("errmsg")。然后后续程序调用该方法时用try{}catch(MyException e){}捕获该异常。

你可能感兴趣的:(日常问题)