我正在开发一个在客户端/服务器系统中使用的 GUI 程序,它将数据保存在Vector
. 我有一个ObjectOutputStream
并且ObjectInputStream
是在我建立连接时创建的,但是当我尝试打开一个时我不确定如何将它传递给新类。在我的Startup
类中,我有一个Serializable
对象 ( Message m
),它被创建并传递给不同的类以修改不同的字段,以及在客户端和服务器之间建立连接
在我的Startup
课堂上,我有这个代码......
m.yourName = tmyName.getText();
m.department = tdepartment.getText();
if (m.yourName != null && m.department != null) {
client = new Socket(server, port);
oout = new ObjectOutputStream(client.getOutputStream());
oin = new ObjectInputStream(client.getInputStream());
toutput.setText("Connected");
oout.writeObject(m);
new WhatToDo (m, oout, oin);
}
在WhatToDo
课堂上我有这个代码......
Message m;
ObjectOutputStream oout;
ObjectInputStream oin;
public WhatToDo(Message a, ObjectOutputStream oout2, ObjectInputStream oin2){
m = new Message();
m = a;
// this is what i'm unsure about and need help with
oout = oout2; //but need to construct oout first
oin = oin2; //but need to construct oin first
}
如果我像在 中那样做新的ObjectOutputStream
,我将创建一个到服务器的新连接。我希望使用在中创建的现有。提前谢谢你的帮助!ObjectInputStream
Startup
Streams
Startup
WhatToDo
我正在使用ActionListener
带有按钮的按钮,因此需要将流保存在构造函数中以供以后在ActionListener
.