【问题标题】:Serialize a static class序列化一个静态类
【发布时间】:2012-01-03 10:06:39
【问题描述】:

在我的 Android 应用程序中,我有几个用户配置特定操作的活动。在配置的每一步中,我将用户提供的参数存储在管理此操作的静态类中。配置完成后,所有活动都可以访问这些参数,一切正常。

除了我想保留此配置,因此在应用程序的未来执行中无需再次配置它。 如何恢复静态类状态? 我不想在数据库中创建一个表来存储这个对象(我认为这是一个丑陋的解决方案)。

我也可以将所有配置转储到 SharedPreferences 中,但是我在管理器中有很多参数,它存储对象列表以及操作执行的结果,手动存储它会有点麻烦在键/值解决方案中。

相反,我正在考虑将类序列化为一个文件,并在应用程序启动时检查该文件是否存在,如果为真,我再次将其反序列化到我的管理器中。 这是一种正确的方法,还是有更漂亮的解决方案?另外,这个静态类中的列表对象会被序列化,还是我需要分别序列化它们?
我正在考虑做类似example

中所示的事情

【问题讨论】:

    标签: java android serialization deserialization


    【解决方案1】:

    我认为序列化到文件是一个好主意。似乎比处理数据库或键/值对更简洁、更简单。否则感觉就像是在序列化。

    并回答你的第二个问题:一般java.util.List的实现都会实现java.io.Serializable,所以你不需要单独做。

    我会完全按照你对文件的描述做,在那个例子中。

    【讨论】:

      猜你喜欢
      • 2010-11-20
      • 2013-01-29
      • 2020-06-07
      • 2011-05-27
      • 2012-10-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-01-30
      相关资源
      最近更新 更多