如何在没有对象的情况下实例化new Handler(clientSocket);
?有人可以提供一些见识吗?
public class Server1 {
public static void main(String[] args) {
try {
ServerSocket serverSocket = new ServerSocket(15897);
while (true) {
Socket clientSocket = serverSocket.accept();
new Handler(clientSocket);
}
} catch (IOException e)
{
System.out.println("problem here 1");
}
}
}
class Handler implements Runnable {
int red;
int reads, r;
Socket clientSocket;
Handler(Socket s)
{
this.clientSocket = s;
new Thread(this).start();
}
public void run(){
BufferedReader bufferedReader;
try {
bufferedReader = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));
String inputLine = bufferedReader.readLine();
最佳答案
在您的代码中,服务器将继续监听传入的客户端。
Socket clientSocket = serverSocket.accept();
serverSocket.accept()
等待,直到找到连接或客户端。如果找到客户端,则
accept()
函数将返回一个本地套接字,该套接字已连接到客户端上的另一个套接字,该套接字已在代码中赋予clientSocket
。new Handler(clientSocket);
现在,将
clientSocket
赋予了Handler
类,您正在其中使用thread
读取该clientSocket
给定的数据。thread
的目的是分别处理每个传入的clientSocket
。