【发布时间】:2018-01-06 04:13:42
【问题描述】:
MainServer.java
import java.net.*;
import java.io.*;
public class MainServer{
public static int PORT=1234;
public static void main(String args[]) {
ServerSocket serverSocket=null;
Socket socket=null;
try{
serverSocket=new ServerSocket(PORT);
}catch(Exception e){
System.out.println("Error is :"+e);
}
while(true){
socket=serverSocket.accept();
SubServer sub=new SubServer(socket);
sub.start();
}
serverSocket.close();
}
}
子服务器.java
import java.net.*;
import java.io.*;
public class SubServer extends Thread {
private Socket socket=null;
String receiveData;
public SubServer(Socket socket){
this.socket=socket;
}
public void run(){
DataInputStream dis=new DataInputStream(socket.getInputStream());
receiveData=dis.readLine();
System.out.println("client Message: "+receiveData);
}
}
错误是:
MainServer.java:27: error: unreachable statement
serverSocket.close();
^
MainServer.java:23: error: unreported exception IOException; must be caught or declared to be thrown
socket=serverSocket.accept();
^
MainServer.java:27: error: unreported exception IOException; must be caught or declared to be thrown
serverSocket.close();
^
Note: ./SubServer.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
3 errors
我看到了很多教程和参考资料,但我无法解决我的问题。单服务器和单客户端工作正常,但多个客户端无法在单个服务器中通信。
我使用Thread 类来处理多个客户端,但它给出了上述错误。
我的错误在哪里我找不到。在此先感谢。
【问题讨论】: