Skip to content

Latest commit

 

History

History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 

README.md

Ngoại lệ (Exception) là gì?

Ngoại lệ là một sự kiện xảy ra trong quá trình thực thi của một chương trình Java, nó làm phá vỡ luồng xử lý bình thường của một chương trình, thậm chí chết chương trình.
Ngoại lệ sảy ra với nhiều lý do khác nhau, nó nằm ngoài dự tính của chương trình. Nó có thể xảy ra bởi lỗi của người dùng, một số khác bởi lỗi của lập trình viên hoặc lỗi của nguồn dữ liệu vật lý
Ví dụ điển hình nhất là khi chúng ta viết chương trình chia hai số. Nếu ta cho mẫu số bằng 0 thì sẽ phát sinh ngoại lệ vì thông thường không thể chia một số cho 0

Các loại exceptions

image

Thông thường có thể chia exception ra làm hai loại:

  • checked (compile time exceptions)
  • unchecked (Runtime exceptions)

Checked

Là loại exception sảy ra trong lúc compile time. Loại này không thể bỏ qua được trong quá trình compile, mà bắt buộc ta phải xử lý nó

Unchecked Exception

Là loại exception xảy ra tại thời điểm thực thi chương trình. Loại exception này được bỏ qua trong quá trình compile, không bắt buộc ta phải handle nó.

Error

Ngoài ra, cần đề cập tới error, đây là những vấn đề quan trọng liên quan đến môi trường thực thi hoặc hệ thống mà lập trình viên không thể kiểm soát. Nó thường làm chết chương trình.
Error là những ngoại lệ mà chúng ta không thể bắt từ chương trình.

Một số exceptions thường gặp

ArithmeticException

Sảy ra khi chúng ta chia một số bất kỳ cho 0
Ví dụ:

int num = 5/0;
System.out.println(num);

image

NullPointerException

Nếu một bất kỳ biến nào có giá trị null, thực hiện bất kỳ hoạt động nào bởi biến đó sẽ xảy ra ngoại lệ NullPointerException.
Ví dụ:

String str = null;
System.out.println(str.length());

image

NumberFormatException

Một biến String có giá trị là các ký tự, chuyển đổi biến này thành số sẽ xảy ra NumberFormatException.

String str = "Java";
int number = Integer.valueOf(str);

image

ArrayIndexOutOfBoundsException

Nếu bạn chèn bất kỳ giá trị nào vào index sai, sẽ xảy ra ngoại lệ ArrayIndexOutOfBoundsException.

int array[] = new int[5];
array[-1] = 10;

image

Ngoài ra còn một số exception đáng kể đến như InputMismatchException, NoSuchElementException, FileNotFoundException, ...