我最近开始使用 Java 进行开发,并且非常享受这种体验。默认的 Java 包加载了有用的东西,拥有 Swing 包对创建 GUI 有很大帮助。我决定为我的 LayoutManager 使用 SpringLayout,因为它简单且非常灵活,但现在我发现自己陷入了困境。
我希望能够保持我的应用程序的状态。我开始使用 Preferences API 来解决这个问题,但这只允许存储 Java 原生(可以理解 - 它的目标是轻量级)。我继续通过持久化包含数据的 XML 字符串来混杂 Preferences 的使用。过了一会儿,我决定环顾四周,看看是否有更好的地方,然后我开始阅读有关可序列化的内容——看起来我找到了答案。
然而,当我尝试序列化一个具有一些由 SpringLayout 管理的 GUI 组件的类时,我遇到了一个障碍,我发现它没有实现可序列化。我以为我已经找到了解决transient
关键字问题的方法,但 SpringLayout 唯一允许的修饰符是final
. 我见过的唯一解决方法是更改我正在使用的 LayoutManager ......我不想这样做,因为我已经创建了一些相当定制的 GUI。
有任何想法吗?
在此先感谢您的所有回复。
-M