[size=large]java对象的复制[/size]
[size=large]方式1:clone[/size]
所需操作:实现Cloneable接口,重写clone()方法。
如何调用:原对象.clone(); 得到复制的对象
方式2:通过序列化
所需操作:需要实现Serializable接口,需要写一个复制对象的处理方法(将对象写入内存,然后从内存中读出来,赋给新的对象)
如何调用:通过调用处理方法得到复制的对象。
比较:
推荐使用序列化的方法:
原因:当对象中有很多成员对象,且成员对象中又有成员对象时,使用clone的方式,需要在每个引用到的成员对象所在的类中重写clone方法,非常的麻烦。
而序列化的方式,值需要在引用到的对象所在类实现Serializable接口,在写一个共用的复制对象的处理方法就行了,更加方便灵活。这是推荐的方式。
[size=large]方式1:clone[/size]
所需操作:实现Cloneable接口,重写clone()方法。
如何调用:原对象.clone(); 得到复制的对象
方式2:通过序列化
所需操作:需要实现Serializable接口,需要写一个复制对象的处理方法(将对象写入内存,然后从内存中读出来,赋给新的对象)
如何调用:通过调用处理方法得到复制的对象。
比较:
推荐使用序列化的方法:
原因:当对象中有很多成员对象,且成员对象中又有成员对象时,使用clone的方式,需要在每个引用到的成员对象所在的类中重写clone方法,非常的麻烦。
而序列化的方式,值需要在引用到的对象所在类实现Serializable接口,在写一个共用的复制对象的处理方法就行了,更加方便灵活。这是推荐的方式。