如果我扩展一个实现Serializable的类,我是否还需要该类来实现Serializable?
例如,如果我有,
public class classToBeExtended implements Serializable
那么这就足够了吗?
public class classThatWillExtend extends classToExtended
或者我需要这样做吗?
public class classThatWillExtend extends classToExtended implements Serializable
答案 0 :(得分:3)
每Javadoc:
可序列化类的所有子类型本身都是可序列化的
答案 1 :(得分:3)
如果任何类的超类实现给定的接口,则子类也实现该接口。 Serializable
在这方面并不特别,所以不,Serializable
类的子类不需要明确声明它们实现Serializable
。他们可以如此声明,但这样做没有任何区别。
另一个含义是,如果扩展Serializable
类,则应确保子类本身确实可序列化。例如,除非您准备添加必要的方法来支持它们,否则不要添加非可序列化类型的非transient
字段。