我的框架处理任何类的域对象。我需要能够浅克隆这样一个域对象实例foo,就好像它实现了Cloneable(它没有实现)并且我调用Object.clone()它返回一个浅克隆。
不起作用的事情:
- 强制 foo 的类实现
Cloneable公共方法clone()。 - 通过反射调用 foo.clone() (到达受保护的方法
Object.clone())。它抛出CloneNotSupportedException是因为foo's 类没有实现Cloneable。 - 序列化和反序列化 foo:我需要浅拷贝,而不是深拷贝。
限制:
foo的类在编译时是不知道的。foo可能具有未作为 getter/setter 公开的字段。
注意:有几个类似的问题,但似乎没有一个专注于获得浅层克隆。