DefaultMutableTreeNode类的api里有这样一段话:
警告:此类的已序列化对象与以后的 Swing 版本不兼容。当前的序列化支持适用于短期存储或运行相同 Swing 版本的应用程序之间的 RMI。从 1.4 版本开始,已在 java.beans 包中添加了支持所有 JavaBeansTM 长期存储的功能。请参见 XMLEncoder。 不太理解是啥意思。。

解决方案 »

  1.   

    意思就是比如你用JDK1.2序列化的一个DefaultMutableTreeNode对象,拿到JDK5.0的环境下面反序列化可能会数据丢失,甚至是无法反序列化,所以说尽量让序列化和反序列化发生在相同版本的JRE里面。楼主可以想一下,比如JDK5.0里面修改了某个类,加了一个属性,然后到JDK1.2里面反序列化,JDK1.2里面那个属性是不存在的,这怎么弄?当然,API里面说的也只是一种可能性,也许这个类压根就没动过,只是提醒一句罢了。
      

  2.   

    就是和以后的JDK版本不兼容呗,叫你试试XMLEncoder