0

我需要制作一个 tcp/ip 通信程序,当向我的按钮添加操作时,它说有未处理的异常,但我无法将 throws IOExceptions 添加到按钮操作功能。如何让它发挥作用?

            public void actionPerformed(ActionEvent e) {
            try{
            int port = Integer.parseInt(txtport.getText());
            ServerSocket listener = new ServerSocket(port);
            String message = txtsend.getText();
            try {
                while (true) {
                    Socket socket = listener.accept();
                    try {
                        PrintWriter out =
                            new PrintWriter(socket.getOutputStream(), true);
                        out.println(message); } 
                    finally {
                        socket.close();
                    }}}
            finally {
                listener.close();
            }}
        catch(Exception e1){}
}
});
4

2 回答 2

0

添加一个 catch,向用户显示错误消息,然后跳出循环。

catch(Exception e) {
     JOptionPane.showMessageDialog(null, "alert", "alert", JOptionPane.ERROR_MESSAGE); 
     break;
} finally {
     socket.close();
}
于 2013-05-08T12:36:38.363 回答
0

您可以throws Exception在函数体之前添加,但您应该catch直接在函数中声明一个块。如果您不熟悉 try - catch 块和异常,请在此处阅读更多信息:http: //docs.oracle.com/javase/tutorial/essential/exceptions/definition.html

于 2013-05-08T12:21:24.840 回答