Về cơ bản, mỗi công việc đều xứng đáng có ngoại lệ riêng. Khi bạn bắt ngoại lệ, bạn không phân biệt các trường hợp khác nhau, như bạn thường làm với các đối tượng, do đó bạn cần các kiểu con khác nhau. Sử dụng quá nhiều ngoại lệ tùy chỉnh là trường hợp tôi thấy hầu như không xảy ra.
Một lời khuyên là tạo ngoại lệ nếu cần và nếu rõ ràng là một loại ngoại lệ trùng lặp với loại ngoại lệ khác, hãy tái cấu trúc mã bằng cách hợp nhất hai. Tất nhiên nó sẽ giúp nếu một số suy nghĩ đi vào cấu trúc ngoại lệ ngay từ đầu. Nhưng nói chung, hãy sử dụng ngoại lệ tùy chỉnh cho tất cả các trường hợp không tương ứng 1: 1 với các trường hợp ngoại lệ hiện tại, theo tình huống cụ thể.
Mặt khác, NullPointerException
s và IndexOutofBoundsException
có thể thực sự thường phù hợp. Tuy nhiên, đừng bắt những cái này (ngoại trừ việc đăng nhập) vì chúng là lỗi lập trình có nghĩa là sau khi ném chúng, chương trình ở trạng thái không xác định.
Nguồn
2008-08-25 21:58:37
Tôi khuyên bạn nên đọc "Chương trình Java hiệu quả" chương 9 vì nó đề cập đến các khía cạnh này và các khía cạnh khác liên quan đến ngoại lệ. –