JDK Source中的序列化接口为空.实施它有什么用?

Jav*_*ner 5 java serialization

它被标记为重复,我正在扩展我的问题.

我的问题是JDK如何在内部序列化对象.当类实现该接口时,ObjectxxxStreams类如何序列化.

我正在研究序列化主题并深入研究JDK源代码.

这是JDK中序列化接口的源代码.

package java.io;
public interface Serializable {
}
Run Code Online (Sandbox Code Playgroud)

此界面中没有任何内容.实现此接口有什么用?我知道,为了序列化一个对象,我们应该实现它.我知道序列化是什么以及如何使用它.但是如何在内部使用ObjectInputStream和进行序列化ObjectOutputStream.这些类与序列化有关.另外,让我们保持这两个班级正在履行职责.我的所有问题都是为什么我们需要实现这个空接口来序列化和反序列化对象以及它如何在内部工作?请详细解释一下.

bNd*_*bNd 1

Serialized是标记接口

java.io.Serialized 标记接口。它没有任何成员定义它。当一个java类要被序列化时,你应该以某种方式告知java编译器有可能序列化这个java类。在这种情况下,使用标记接口。

请参阅javadoc可序列化接口的要求