`
meikebo
  • 浏览: 15993 次
社区版块
存档分类
最新评论

JAVA采用串行化方法实现深拷贝

    博客分类:
  • JAVA
阅读更多
实现JAVA深拷贝,有两种方法。
方法一,传统重载clone()方法,但当类中有很多引用时,比较麻烦。
方法二,采用序列化方法,重载clone()方法,实现简单。
如下,是方法二实现代码:
public Object clone()
	{
		Object object=null;
		try
		{
			ByteArrayOutputStream ot = new ByteArrayOutputStream();
			ObjectOutputStream oo = new ObjectOutputStream(ot);
			oo.writeObject(this);
			ByteArrayInputStream it = new ByteArrayInputStream(ot.toByteArray());
			ObjectInputStream oi = new ObjectInputStream(it);
			object = oi.readObject();
			
		}catch(Exception e)
		{
			e.printStackTrace();
		}
		return object;
		
	}
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics