ObjectOutputStream
的write方法的方法签名为
public final void writeObject(Object obj) throws IOException
由于
obj
应该实现Serializable
(了解标记)。为什么Java开发人员不将此方法编写为
public final void writeObject(Serializable obj) throws IOException
有什么原因吗?
最佳答案
writeObject是在ObjectOutput接口(interface)中定义的,其API表示为The class that implements this interface defines how the object is written
。这意味着从理论上讲,可能存在除ObjectOutputStream之外的实现,这些实现可能正在使用不需要对象可序列化的其他序列化方式。