Java 深clone对象的另一种方法
[java] view plain copy
- public static <T> T deepCopy(T src) throws IOException, ClassNotFoundException{
- ByteArrayOutputStream byteOut = new ByteArrayOutputStream();
- ObjectOutputStream out = new ObjectOutputStream(byteOut);
- out.writeObject(src);
- ByteArrayInputStream byteIn = new ByteArrayInputStream(byteOut.toByteArray());
- ObjectInputStream in =new ObjectInputStream(byteIn);
- T dest = (T) in.readObject();
- return dest;
- }
前提是,传的对象,以及包含的对象需要都实现 java.io.Serializable 序列化 接口