gpt4 book ai didi

java - 来回发送对象到线程

转载 作者:行者123 更新时间:2023-12-01 15:20:29 25 4
gpt4 key购买 nike

我正在尝试用 Java 制作一个简单的服务器客户端线程应用程序,关于一个类似测验的游戏。我有一个 Main 类作为它的“大脑”,它将处理主要流程,例如提出问题、检查答案等。我还有另外两个类,ServerHandler玩家ServerHandler用于连接MainPlayer。到目前为止,问题是我想将 Main 的属性发送到 ServerThread。我尝试使用 this 但它不起作用。任何有助于改进我的程序的建议也将受到欢迎。

    public class Main 
{
public static int MYECHOPORT = 8189;
/**
* @param args the command line arguments
*/
public static void main(String[] args)
{
// TODO code application logic here

ServerSocket s = null;
int count;
count=0;
Pemain [] player=new Pemain[3];

try
{
s = new ServerSocket(MYECHOPORT);
}
catch(IOException e)
{
System.out.println(e);
System.exit(1);
}
while (true)
{
for(int i=0;i<3;i++)
{
player[i]=new Pemain();
player[i].setNo(i+1);
count++;
}
try
{
for(int i=0;i<3;i++)
{
player[i].setS(s.accept());
}
}
catch(IOException e)
{
System.out.println(e);
continue;
}

if(count==3)
{
for(int i=0;i<3;i++)
{
new ServerHandler(player[i].getS(), this).start();
}
}


// ignore
}
}

}

最佳答案

不起作用,因为您处于静态方法(main())中。重构为非静态方法。

剥离 main 的静态并重命名为 m(String[] args)。然后插入这个main方法:

public static void main(String[] args) {
new Main().m(args)
}

关于java - 来回发送对象到线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10994969/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com