克隆
ObjectUtil#clone
克隆对象,如果对象实现Cloneable接口,调用其clone方法,如果实现Serializable接口,执行深度克隆,否则返回null
。
classObjextendsCloneSupport<Obj> { publicStringdoSomeThing() { return"OK"; } }
Objobj=newObj(); Objobj2=ObjectUtil.clone(obj); // OKobj2.doSomeThing();
ObjectUtil#cloneIfPossible
返回克隆后的对象,如果克隆失败,返回原对象ObjectUtil#cloneByStream
序列化后拷贝流的方式克隆,对象必须实现Serializable接口