RuntimeException
là một phân lớp của java.lang.Exception
. RunTimeExceptions
hầu như luôn là kết quả của lỗi lập trình hoặc/và bất biến không được đáp ứng (Không được thông qua khi chúng không được), vì vậy bạn không phải bắt chúng như java.lang.Exception
(được kiểm tra Ngoại lệ). Bạn không bắt được chúng vì có rất ít hệ thống Run Time có thể làm để phục hồi.
Tôi nghĩ rằng thời gian chạy cụm từ chỉ có nghĩa là chúng xảy ra khi chương trình đang chạy (rõ ràng !!) và chủ yếu là trình biên dịch không buộc kiểm tra được tích hợp vào mã như Kiểm tra ngoại lệ. Tôi nghĩ đây là một ví dụ về việc khó đặt tên cho một lớp học một cách thích hợp, ví dụ: Tôi đoán họ có thể có ngoại lệ không được kiểm tra theo mặc định và được gọi là ngoại lệ. Sau đó phân lớp nó để cung cấp CheckedException - mọi người gọi java.lang.Exception là một ngoại lệ được kiểm tra, nhưng nó không rõ ràng từ tên lớp. Nhưng họ đã không và chúng tôi có:
> java.lang.Exception is referred to as "Checked Exception"
> java.lang.RuntimeException is referred to as "Unchecked Exception"