Если базовый класс реализует java.io.Serializable
, то подклассы должны иметь serialVersionUID
.Внутренние классы не должны быть сериализуемыми.
Если вы планируете объекты, созданные с помощью этого кода, подвергаться воздействию другого кода, который потенциально может захотеть сериализовать данные, не используйте двойную скобку (я полагаю, вы моглииспользуйте его с writeReplace
, но это немного уродливо).Если вы уверены, что ваш код не вступит в контакт с серилизацией, вставьте @SuppressWarnings("serial")
в самом широком контексте.