摆动组件和序列化
为什么 Swing 类实现接口?我实现视图的方式是,它们是无状态的,所有状态数据都存储在表示模型中。所以我不需要序列化我的观点。我使用了注释来删除警告。有没有更好的方法来删除它们?JComponent
Serializable
@SuppressWarnings("serial")
为什么 Swing 类实现接口?我实现视图的方式是,它们是无状态的,所有状态数据都存储在表示模型中。所以我不需要序列化我的观点。我使用了注释来删除警告。有没有更好的方法来删除它们?JComponent
Serializable
@SuppressWarnings("serial")
最初,GUI构建器将以序列化格式保存UI。该标记甚至具有从序列化形式加载的属性(我不知道是否有其他人使用它,我只是使用它来恶意)。不幸的是,对GUI使用序列化机制并不真正起作用。Swing只保证在同一个主要版本中的兼容性(我猜即使只有很少的测试)。applet
为什么 Swing JComponent 类实现接口 Serializeable?
尽管这允许您序列化类并将它们发送到客户端和服务器以及从客户端和服务器发送它们,但这似乎不是一个直观的方案。有更好的机会,仍然渺茫,有人可能想要将组件序列化到文件。这将允许这种序列化。
有没有更好的方法来删除[警告]?
您可以实例化串行VersionUID,但是如果您这样做,则需要在类更改时维护它。这似乎有些过分。正如Laurence Gonsalves在他的评论中指出的那样,另一种选择是完全禁止在Preferences->Java->Compiler->Errors/Warnings->Potential Programming Problems字段中的警告。