Các ngoại lệ và lỗi đều là lớp con của lớp Throwable. Lỗi chỉ ra sự cố chủ yếu xảy ra do thiếu tài nguyên hệ thống và ứng dụng của chúng tôi không thể bắt được các loại sự cố này. Một số ví dụ về lỗi là lỗi hệ thống và lỗi hết bộ nhớ. Các lỗi chủ yếu xảy ra trong thời gian chạy mà chúng thuộc loại không được kiểm tra.
Ngoại lệ là các vấn đề có thể xảy ra trong thời gian chạy và thời gian biên dịch. Nó chủ yếu xảy ra trong mã do các nhà phát triển viết. Các ngoại lệ được chia thành hai loại như ngoại lệ đã kiểm tra và ngoại lệ không được kiểm tra.
Sr. Không. | Phím | Lỗi | Ngoại lệ |
---|---|---|---|
1 | Loại | Được phân loại là loại không được kiểm tra | Được phân loại là đã chọn và đã bỏ chọn |
2 | Gói | Nó thuộc về java.lang.error | Nó thuộc về java.lang.Exception |
3 | Có thể khôi phục / Không thể khôi phục | Không thể khôi phục được | Nó có thể phục hồi được |
4 | Nó không thể xảy ra tại thời điểm biên dịch | Nó có thể xảy ra trong thời gian chạy thời gian biên dịch cả hai | |
5 | Ví dụ | OutOfMemoryError, IOError | NullPointerException, SqlException |
Ví dụ về Lỗi
public class ErrorExample { public static void main(String[] args){ recursiveMethod(10) } public static void recursiveMethod(int i){ while(i!=0){ i=i+1; recursiveMethod(i); } } }
Đầu ra
Exception in thread "main" java.lang.StackOverflowError at ErrorExample.ErrorExample(Main.java:42)
Ví dụ về Ngoại lệ
public class ExceptionExample { public static void main(String[] args){ int x = 100; int y = 0; int z = x / y; } }
Đầu ra
java.lang.ArithmeticException: / by zero at ExceptionExample.main(ExceptionExample.java:7)