我有一个例外列表(包名称路径:com.a.b.ExceptionA
)和错误代码映射。
现在,用户将拨打new ApiException(errorcode,"message")
或new ApiException(errorcode,"message", Throwable t)
。然后,在BaseException
内,我想基于错误代码创建ExceptionA,B并抛出它。
我可以查看地图并获取异常类型路径,但是如何创建异常并抛出它?那么有些事情如下?还是更好的方法?
Class<?> c = Class.forName("com.a.b.ExceptionA");
Constructor<?> cons = c.getConstructor(String.class);
Object object = cons.newInstance("message");
throw object;
谢谢!