@SuppressWarnings("unchecked")
public static <T extends Serializable> T deepClone(T object) {
T temp = null;
try {
ByteArrayOutputStream baos = new ByteArrayOutputStream();
ObjectOutputStream oos = new ObjectOutputStream(baos);
oos.writeObject(object);
ByteArrayInputStream bis = new ByteArrayInputStream(baos.toByteArray());
ObjectInputStream ois = new ObjectInputStream(bis);
temp = (T) ois.readObject();
} catch (Exception e) {
e.printStackTrace();
}
return temp;
}
Java深度克隆
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 我们的程序里,时常要使用多线程。因此多线程的管理变的尤为重要。ThreadPoolExecutor很好的解决了这一...
- Java 8引入了一个新的Optional类。Optional类的Javadoc描述如下: 这是一个可以为null...
- 不想当将军的士兵不是好士兵,不能管理项目的编辑器不是好编辑器!Sublime 作为一款优秀的编辑器,其项目管理功能...
- 注意点: 1.区分传入参数的类型 2.递归思想 3.map方法会产生一个新的数组 4. for in 可以得到对象...
- 2017-4-21深圳 晴我是日记星球198号星宝宝“模具王子” ,正在参加孙老师的日记星球21天蜕变之旅的写作训...