泛型克隆接口
引入包 cn.hutool.core.clone.Cloneable
privatestaticclassCatimplementsCloneable<Cat> { privateStringname="cat1"; publicCatclone() { try { return (Cat) super.clone(); } catch (CloneNotSupportedExceptione) { thrownewCloneRuntimeException(e); } } }
泛型克隆类
privatestaticclassDogextendsCloneSupport<Dog> { privateStringname="dog"; }
深克隆
实现Cloneable接口后克隆的对象是浅克隆,要想实现深克隆,则使用ObjectUtil类的方法:
ObjectUtil.cloneByStream(obj)
注意:对象必须实现Serializable接口。