TestSrl t = new TestSrl();
System.out.println(t);
ByteArrayOutputStream bs = new ByteArrayOutputStream();
ObjectOutputStream os = new ObjectOutputStream(bs);
os.writeObject(t);
os.writeObject(t);
ObjectInputStream in1 = new ObjectInputStream(new ByteArrayInputStream(
bs.toByteArray())), in2 = new ObjectInputStream(
new ByteArrayInputStream(bs.toByteArray()));
TestSrl t1 = (TestSrl) in1.readObject(), t3 = (TestSrl) in1
.readObject();
System.out.println(t1);
System.out.println(t3);
TestSrl t2 = (TestSrl) in2.readObject();
System.out.println(t2);
运行结果
TestSrl [TestSrl@1fa1bb6]
TestSrl [TestSrl@1bbf1ca]
TestSrl [TestSrl@1bbf1ca]
TestSrl [TestSrl@1ff0dde]
本文详细解析了Java中使用ByteArrayOutputStream、ObjectOutputStream和ObjectInputStream进行对象序列化与反序列化的过程,展示了如何将Java对象转换为字节流,并通过反序列化还原成原始对象。

被折叠的 条评论
为什么被折叠?



