Java 深clone对象的另一种方法



Java 深clone对象的另一种方法

 

[java] view plain copy

在CODE上查看代码片派生到我的代码片

  1. public static <T> T deepCopy(T src) throws IOException, ClassNotFoundException{
  2.         ByteArrayOutputStream byteOut = new ByteArrayOutputStream();
  3.         ObjectOutputStream out = new ObjectOutputStream(byteOut);
  4.         out.writeObject(src);
  5.         ByteArrayInputStream byteIn = new ByteArrayInputStream(byteOut.toByteArray());
  6.         ObjectInputStream in =new ObjectInputStream(byteIn);
  7.         T dest = (T) in.readObject();
  8.         return dest;
  9.     }

前提是,传的对象,以及包含的对象需要都实现 java.io.Serializable 序列化 接口