Tôi có 3 dòng sau của mã:Tôi nên làm gì nếu một IOException được ném?
ServerSocket listeningSocket = new ServerSocket(earPort);
Socket serverSideSocket = listeningSocket.accept();
BufferedReader in = new BufferedReader(new InputStreamReader(serverSideSocket.getInputStream()));
Trình biên dịch phàn nàn về tất cả 3 dòng này và phàn nàn của nó là như nhau cho tất cả 3 dòng: không được báo cáo ngoại lệ java.io.IOException; Chi tiết hơn, những ngoại lệ này được ném bởi new ServerSocket
, accept()
và getInputStream()
.
Tôi biết mình cần sử dụng try ... catch ...
. Nhưng vì điều đó tôi cần phải biết những ngoại lệ này có ý nghĩa gì trong mọi trường hợp cụ thể (tôi nên giải thích chúng như thế nào). Khi chúng xảy ra? Ý tôi là, không phải nói chung, nhưng trong 3 trường hợp đặc biệt này.
+1 Đây là cốt lõi của câu trả lời. Hãy suy nghĩ về những gì có thể đi sai. API cho bạn biết rằng nó sẽ không luôn luôn hoạt động vì những lý do ngoài tầm kiểm soát của bạn. Bạn muốn xử lý tình trạng lỗi đó như thế nào? Một khi bạn biết câu trả lời cho câu hỏi đó, bạn sẽ biết những gì bạn muốn làm để đáp ứng trình biên dịch. – Yishai