Java while循环只执行一次
我编写了一个简单的服务器应用程序,如下所示。 我在run()中有一个while循环,但它似乎只执行了一次try块。我希望程序不断地发出“再见”的声音。我如何让它这样做Java while循环只执行一次,java,Java,我编写了一个简单的服务器应用程序,如下所示。 我在run()中有一个while循环,但它似乎只执行了一次try块。我希望程序不断地发出“再见”的声音。我如何让它这样做 import java.net.*; import java.io.*; public class GreetingServer extends Thread { private ServerSocket serverSocket; public GreetingServer() throws IOExceptio
import java.net.*;
import java.io.*;
public class GreetingServer extends Thread
{
private ServerSocket serverSocket;
public GreetingServer() throws IOException
{
serverSocket = new ServerSocket(5063);
serverSocket.setSoTimeout(0);
}
public void run()
{
while(true)
{
try
{
System.out.println("Waiting for client on port " +
serverSocket.getLocalPort() + "...");
Socket server = serverSocket.accept();
System.out.println("Just connected to "
+ server.getRemoteSocketAddress());
DataOutputStream out = new DataOutputStream(server.getOutputStream());
out.writeUTF("\nGoodbye!");
//server.close();
}
catch(SocketTimeoutException s)
{
System.out.println("Socket timed out!");
break;
}
catch(IOException e)
{
e.printStackTrace();
break;
}
continue;
}
}
public static void main(String [] args)
{
try
{
Thread t = new GreetingServer();
t.start();
}
catch(IOException e)
{
e.printStackTrace();
}
}
}
我认为你得到了例外,所以取消中断;从catch block我认为你得到了异常,所以移除中断;从catch块中,您肯定会得到异常检查您的日志猫在eclipse中是否存在异常。
然后找到该异常的解决方案:)您肯定会遇到异常,请在eclipse中检查日志以查找异常。
然后找到该异常的解决方案:)从catch块中删除
break
语句从catch块中删除break
语句从catch块中删除这些中断!从catch块中删除这些中断。您是否获得异常您可能会在catch中获得一些异常并中断循环!