我正在设置这个愚蠢的回声服务器。
public final class EchoServer
{
// ...
public void listen()
{
try(final ServerSocket serverSocket = new ServerSocket(default_port))
{
while(true) // <-- highlighted by IntelliJ
{
final Socket clientSocket;
System.out.println("Server listening.");
clientSocket = serverSocket.accept();
System.out.println("Connection accepted.");
new ConversationHandler(clientSocket).start();
System.out.println("Started new ConversationHandler.\n");
}
}
catch(final IOException exception)
{
exception.printStackTrace();
}
}
}
通常while(true)
可能会导致各种亵渎咒骂,我很清楚这一点,但在这种情况下我并不在意,因为我只是在涂写代码来获取习惯于java.net
。
然而,IntelliJ高度重视并用此警告标记它:
的 'while' statement cannot complete without throwing an exception.
我无法看到这个不可避免的例外情况?