【发布时间】:2016-01-27 19:34:14
【问题描述】:
我有一个扩展RuntimeException 的异常,并且我有一个属性List。
public class ExperterBadRequestException extends RuntimeException {
private final List<String> errors;
像 Sonar 这样的自动评估工具会抛出一个严重错误:问题是 RuntimeExceptions 是 Serializable,而 List 是一个接口,而不是。
那我该怎么办?从 List 更改为 ArrayList(不要相信),在这种情况下不应该使用 Lists 吗?为它制作writeObject 和readObject?或者这个警告没有意义?
【问题讨论】:
-
你会序列化异常吗?
-
唯一重要的是 actual 类型是否是可序列化的,只有当你序列化异常时才重要,这实际上很少见。
-
没有明确说明,我不确定在日志跟踪上使用它还是在抛出异常的其他用途上使用它。事实上,我很担心这方面的最佳做法。
-
是什么让你觉得哪里有问题?你经历过一些程序失败吗?如果有,是什么?
标签: java exception serialization runtimeexception