2013-10-07 44 views

回答

2

我认为你的问题的答案是在serialVersionUID上阅读。特别是,你经常想要在你的类上指定这个类,以便能够处理类随时间变化的事实。

您所指的评论是说你不能在数组上设置serialVersionUID。如果这是真的,并且serialVersionUID总是需要匹配,那么你的数组会有严重的问题,并且在序列化方面会非常脆弱。为了解决这个问题,语言设计者决定array(de)序列化会忽略serialVersionUID,从而避开无法定义的问题。

+0

谢谢。那么,你是说包含数组变量的类,不能有serialVersionUID?我已经在不同的类中使用了int []数组和对象[]以及serialVersionUID,以便在套接字和数组之间进行基于对象的通信时,总是可以很好地在线上实现。可能是我无法清楚地理解你的观点。是否可以粘贴示例代码?我将不胜感激。 – Ashley

+0

@Ashley,不完全。包含数组的类可以具有serialVersionUID,但是数组本身不能。 –

+0

再次感谢。所以,它实际上是阵列本身。我认为术语“数组类”有点混乱。感谢您解决这个问题。 – Ashley

0

我还没有想过为什么我需要做他的。

你不知道。你不能。没有定义数组类的语法,更不用说他们的成员。

这也是为什么检查它完全没有意义。没有什么可以改变的班级。