Java:ObjectInputStream返回相同的对象
我正在使用套接字编程java网络,并使用简单的对象在远程程序之间交换数据 在本例中,我有一个Java:ObjectInputStream返回相同的对象,java,sockets,object,inputstream,objectinputstream,Java,Sockets,Object,Inputstream,Objectinputstream,我正在使用套接字编程java网络,并使用简单的对象在远程程序之间交换数据 在本例中,我有一个ObjectInputStream,它使用以下方法构造: new ObjectInputStream(Socket.getInputStream()) 因此,我使用writeObject方法来编写一个包含一些字符串字段的对象 但是,当调用readObject时,接收方总是返回相同的对象 为了检查这一点,我设置了一个字符串字段来存储当前时间。写入对象时,每个对象的时间总是不同的。但接收到的对象都在字符串字
ObjectInputStream
,它使用以下方法构造:
new ObjectInputStream(Socket.getInputStream())
因此,我使用writeObject
方法来编写一个包含一些字符串字段的对象
但是,当调用readObject
时,接收方总是返回相同的对象
为了检查这一点,我设置了一个字符串字段来存储当前时间。写入对象时,每个对象的时间总是不同的。但接收到的对象都在字符串字段中显示相同的单一时间
显然,每次调用ObjectInputStream.ReadObject
后返回的每个对象都是其他对象的精确克隆
为什么会发生这种情况?尝试执行objectInputStream.reset()