本文整理了Java中cn.hutool.core.util.ObjectUtil.cloneByStream()
方法的一些代码示例,展示了ObjectUtil.cloneByStream()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ObjectUtil.cloneByStream()
方法的具体详情如下:
包路径:cn.hutool.core.util.ObjectUtil
类名称:ObjectUtil
方法名:cloneByStream
[英]序列化后拷贝流的方式克隆
对象必须实现Serializable接口
[中]序列化后拷贝流的方式克隆
对象必须实现可序列化接口
代码示例来源:origin: looly/hutool
/**
* 克隆对象<br>
* 如果对象实现Cloneable接口,调用其clone方法<br>
* 如果实现Serializable接口,执行深度克隆<br>
* 否则返回<code>null</code>
*
* @param <T> 对象类型
* @param obj 被克隆对象
* @return 克隆后的对象
*/
public static <T> T clone(T obj) {
T result = ArrayUtil.clone(obj);
if (null == result) {
if (obj instanceof Cloneable) {
result = ReflectUtil.invoke(obj, "clone");
} else {
result = cloneByStream(obj);
}
}
return result;
}
代码示例来源:origin: looly/hutool
/**
* 克隆对象<br>
* 如果对象实现Cloneable接口,调用其clone方法<br>
* 如果实现Serializable接口,执行深度克隆<br>
* 否则返回<code>null</code>
*
* @param <T> 对象类型
* @param obj 被克隆对象
* @return 克隆后的对象
*/
public static <T> T clone(T obj) {
T result = ArrayUtil.clone(obj);
if (null == result) {
if (obj instanceof Cloneable) {
result = ReflectUtil.invoke(obj, "clone");
} else {
result = cloneByStream(obj);
}
}
return result;
}
代码示例来源:origin: cn.hutool/hutool-all
/**
* 克隆对象<br>
* 如果对象实现Cloneable接口,调用其clone方法<br>
* 如果实现Serializable接口,执行深度克隆<br>
* 否则返回<code>null</code>
*
* @param <T> 对象类型
* @param obj 被克隆对象
* @return 克隆后的对象
*/
public static <T> T clone(T obj) {
T result = ArrayUtil.clone(obj);
if (null == result) {
if (obj instanceof Cloneable) {
result = ReflectUtil.invoke(obj, "clone");
} else {
result = cloneByStream(obj);
}
}
return result;
}
内容来源于网络,如有侵权,请联系作者删除!