博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JAVA-序列化深拷贝对象
阅读量:4879 次
发布时间:2019-06-11

本文共 1579 字,大约阅读时间需要 5 分钟。

序列化拷贝方法

@SuppressWarnings("unchecked")public static 
T clone(T obj) { T cloneObj = null; ObjectOutputStream oos = null; ObjectInputStream ois = null; try { ByteArrayOutputStream baos = new ByteArrayOutputStream(); oos = new ObjectOutputStream(baos); oos.writeObject(obj); ByteArrayInputStream bais = new ByteArrayInputStream(baos.toByteArray()); ois = new ObjectInputStream(bais); cloneObj = (T) ois.readObject(); } catch (Exception e) { e.printStackTrace(); } finally { try { if (oos != null) { oos.close(); } if (ois != null) { ois.close(); } } catch (Exception e) { e.printStackTrace(); } } return cloneObj;}

测试

public class Address implements Serializable {    private String address;
public class User implements Serializable {    private Integer id;    private String name;    private Integer age;    private Address address;
public static void main(String[] args) {    Address address = new Address("wuhan");    User user = new User(1, "asds", 18, address);    User clone = clone(user);    System.out.println(System.identityHashCode(user) + "\t" + user);    System.out.println(System.identityHashCode(clone) + "\t" + clone);    user.getAddress().setAddress("beijing");    System.out.println(user.hashCode() + "\t" + user);    System.out.println(clone.hashCode() + "\t" + clone);}

 

需要被拷贝对象实现 Serializable 序列化接口,内部所有的属性也全部要实现序列化接口

 

转载于:https://www.cnblogs.com/jhxxb/p/10523040.html

你可能感兴趣的文章
实训作业2
查看>>
【javascript学习——《javascript高级程序设计》笔记】DOM操作
查看>>
高效的SQL语句翻页代码
查看>>
Session过期,如何跳出iframe框架页的问题
查看>>
HDU 5918 SequenceI (2016 CCPC长春站 KMP模版变形)
查看>>
bzoj1485: [HNOI2009]有趣的数列
查看>>
NPAPI插件开发详细记录:用VS2010开发NPAPI插件步骤
查看>>
linux下Makefile全解(二)
查看>>
XMLHTTP.readyState的五种状态
查看>>
百度外卖 前端面试题
查看>>
record for json formate site
查看>>
get 和 post 请求的区别(转)
查看>>
查询树形的根节点
查看>>
HDU 1272 小希的迷宫
查看>>
利用WPS 2012/2013 0day针对中国政府部门的定向攻击
查看>>
hdu 5412 CRB and Queries(整体二分)
查看>>
linux程序目录
查看>>
Socket ABAP (转)
查看>>
[C#]SharpDevelop---窗体设计器
查看>>
调试wcf服务端口号自动变化的解决办法
查看>>