在了解 Java 中如何使用标记接口时,我从 ObjectOutputStream 类中找到了 writeObject 方法。它接收 Object 的实例作为输入,并且仅当给定的参数是 Serializable 的实例时才进行序列化。
为什么 writeObject 方法不接收 Serializable 实例作为输入而不是 Object,以便在编译时进行类型检查?将参数类型设为 Object 并对 Serializable 执行 instanceOf 检查的原因是什么?
在了解 Java 中如何使用标记接口时,我从 ObjectOutputStream 类中找到了 writeObject 方法。它接收 Object 的实例作为输入,并且仅当给定的参数是 Serializable 的实例时才进行序列化。
为什么 writeObject 方法不接收 Serializable 实例作为输入而不是 Object,以便在编译时进行类型检查?将参数类型设为 Object 并对 Serializable 执行 instanceOf 检查的原因是什么?