我有一个例外,它扩展了RuntimeException
,我有一个属性List
。
public class ExperterBadRequestException extends RuntimeException {
private final List<String> errors;
像Sonar这样的自动评估工具会抛出一个严重的错误:问题是RuntimeExceptions
是Serializable
,而List
是一个接口没有。
那我该怎么办?从列表更改为ArrayList
(不相信),在这种情况下不应该使用列表?为它制作writeObject
和readObject
?或许这个警告没有意义?
答案 0 :(得分:1)
问题是RuntimeExceptions是Serializable,而List是一个接口没有。
不,这不是问题。只要它初始化为List,
的可序列化实现(例如JDK中的任何一个),这根本不是问题。
那我该怎么办?
没有
从List更改为ArrayList(不要相信)
不必要的。
在这种情况下,不应该使用列表吗?
不,为什么?
为它创建一个writeObject和readObject吗?
不必要的。
如果您遇到问题,您还没有说明它实际上是什么。