【发布时间】:2011-07-12 18:28:19
【问题描述】:
我有
class Person implements Serializable {
}
那有什么用,如果我简单地使用会发生什么
class Person {
}
【问题讨论】:
-
好吧,首先你会得到一个语法错误,因为你没有关闭括号。
标签: java serialization
我有
class Person implements Serializable {
}
那有什么用,如果我简单地使用会发生什么
class Person {
}
【问题讨论】:
标签: java serialization
【讨论】:
如果您从不序列化Person 的实例,则声明implements Serializable 毫无意义。但如果你不这样做并尝试序列化一个实例,你会得到一个NotSerializableException。
【讨论】:
序列化确保数据可以通过网络发送,并且可以使用序列化/反序列化机制持久化并恢复到其原始状态。
【讨论】:
这是一个marker interface,将此类声明为serializable。您应该google for "java serialization",因为该主题已被数百篇教程和文章充分涵盖。你甚至可以start right at Wikipedia。简而言之,序列化就是从文件或网络套接字等流中读取和写入整个对象图。
【讨论】:
基本上它是一个标记接口,表示您的类可以序列化。请参阅here 了解更多信息。
【讨论】:
Serializable 只是一个标记接口。它完全是空的。它只是允许序列化机制验证类是否能够被持久化。
【讨论】:
J2SE doc 说:
类的可序列化性由实现 java.io.Serializable 接口的类启用。 未实现此接口的类将不会对其状态进行任何序列化或反序列化。可序列化类的所有子类型本身都是可序列化的。序列化接口没有方法或字段,仅用于识别可序列化的语义。
基本上,它是您必须为在 java 中序列化类而实现的接口。
【讨论】: