0

我正在开发一个在客户端/服务器系统中使用的 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,我将创建一个到服务器的新连接。我希望使用在中创建的现有。提前谢谢你的帮助!ObjectInputStreamStartupStreamsStartupWhatToDo

我正在使用ActionListener带有按钮的按钮,因此需要将流保存在构造函数中以供以后在ActionListener.

4

1 回答 1

0

我希望使用现有的 Streams

这正是您的代码现在所做的。您对“但需要构建”的评论是不正确的。

于 2012-06-10T04:19:24.037 回答