我试图重建一个序列化对象并从中访问数据。
这就是我发送对象的方式。
Socket socket = new Socket ("localhost", port);
ObjectOutputStream out = new ObjectOutputStream (socket.getOutputStream());
Tester t = new Tester("test");
out.writeObject(t);
out.flush();
这就是我收到它的方式
// 这就是服务器的构建方式
private ServerSocket server;
server = new ServerSocket(port);
newsocket = server.accept();
// 这就是我实际获取对象的方式
ObjectInputStream input = new ObjectInputStream(newSocket.getInputStream());
Tester obj = (Tester) input.readObject();
System.out.println(obj.getText());
但是我只得到以下输出
[Ljava.lang.StackTraceElement;@237360be
我希望得到的是我在对象“Test”中发送的字符串。有什么我做错了吗?
我的 Tester 类看起来像这样
public class Tester implements Serializable {
private String theMessage = "";
public Tester(String message) {
theMessage = message;
}
public String getText() {
return theMessage;
}
}