为什么以及何时需要添加“[Serializable]”属性?

时间:2014-09-16 01:27:06

标签: serialization

1)除了从对象到文件/内存的序列化......什么时候必须添加“[Serializable]”属性?

2)为什么我们必须添加?为什么我们不能直接将对象保存到.NET库的某些已知格式中?

3)我怎样才能告诉我们必须添加这个属性?在什么条件下?

非常感谢!

1 个答案:

答案 0 :(得分:0)

  

1)除了从对象到文件/内存的序列化......什么时候必须添加“[Serializable]”属性?

当您想要将它或直接或间接包含它的对象序列化到任何其他媒体时,例如套接字,RMI,......

  

2)为什么我们必须添加它?

因为这是他们设计它的方式。安全原因让人想起:例如,您确实不希望密码可序列化。

  

为什么我们不能直接将对象保存到.NET库的某些已知格式中?

首先,因为序列化在.NET之前已经存在了几年;其次,还有其他各种方法可以实现,例如SOAP。

  

3)如何判断我们必须添加此属性的情况?在什么条件下?

你只是在这里再问两次问题。如果你得到一个NotSerializableException命名类,你肯定需要这样做,并且异常并没有表明你不想在一开始就无序序列化的事情序列化。

相关问题