【发布时间】:2015-06-14 04:27:03
【问题描述】:
我在.jar 文件(库文件)中有一个如下类:
class A{
//someimplementation
}
我想把implements Serializable界面改成如下:
class A implements Serializable {
//the same implementation as present in classA
}
我不想反编译 jar 文件,更改类签名,然后在编译后再次归档。
有没有办法像编写钩子来实现这一点?请提供任何指示/建议。 我的最终目标是在不修改jar文件的情况下实现Serializable接口。
【问题讨论】:
-
如果您尚未加载类,您可以使用 javassist 之类的字节操作框架将接口添加到从 jar 文件中为类获取的字节所获得的类表示中在开始时间。您还可以创建类
B,它扩展类A并实现Serializable,如果这也可以(您还可以为A创建包装器或 DTO,而不是继承)
标签: java serialization hook