MyClass1 extends MyClass2 implements Serializable
我正在尝试使用
在HashMap上的android应用程序中使用saveOnInstanceState savedInstanceState.getSerializable()
我已经使用其他使用自定义类的哈希映射,但是通过使这些类可序列化,但是我似乎也因为MyClass2不可序列化而得到了这个序列化的错误。 MyClass2是第三方库,因此我无法对其进行修改并使其可序列化,我能做些什么吗?
谢谢!
答案 0 :(得分:2)
正如Jan的回答所说,你通常不会这样做。在某些情况下,有一些工作可以实现它,但即使它们工作也有点脆弱。要有机会,您需要以下内容才能申请:
serialPersistentFields
方法或精心构造的writeObject
/ readObject
对实现,这些实现在序列化和反序列化期间保存/读取超类中的数据。这必然需要了解和访问早期项目符号中描述的超级结构。当然,在完成所有这些工作时,您将使用超类的一些知识,这意味着如果超类实现发生变化,这可能会以难以找到的方式破解。
答案 1 :(得分:0)
不幸的是,你不能。如果你能做到这一点,那将是一个安全漏洞,因为你可以序列化每个班级,即使班级不应该这样。