Mar*_*ars 7 java serialization extends serializable implements
如果我扩展一个实现 Serialized 的类,我是否需要该类也实现 Serializable?
例如,如果我有,
public class classToBeExtended implements Serializable
Run Code Online (Sandbox Code Playgroud)
那么这样就够了吗?
public class classThatWillExtend extends classToExtended
Run Code Online (Sandbox Code Playgroud)
或者我需要这样做吗?
public class classThatWillExtend extends classToExtended implements Serializable
Run Code Online (Sandbox Code Playgroud)
如果一个类的任何超类实现了给定的接口,那么子类也实现了该接口。 Serializable在这方面并不特殊,所以不,类的子类Serializable不需要显式声明它们实现Serializable. 他们可以这样声明,但这样做并没有什么区别。
另一个含义是,如果扩展一个Serializable类,则应该确保子类本身确实是可序列化的。例如,不要添加transient不可序列化类型的非字段,除非您还准备添加必要的方法来支持它们。