Nội dung bài viết
Từ khóa throw
trong Java được sử dụng để ném ra một exception
tường minh. Chúng ta có thể ném cả Checked Exception
và Unchecked Exception
trong Java bằng từ khóa throw
. Từ khóa throw
thường được sử dụng để ném các Custom Exception
(là các exception được định nghĩa bởi lập trình viên).
Cú Pháp throw
trong Java
Cú pháp throw
trong Java như sau:
throw exception;
Ví dụ về việc sử dụng throw
để ném ra một IOException
:
throw new IOException("File không tồn tại");
Ví Dụ về Từ Khóa throw
trong Java
Ví Dụ 1: Ném Ra Ngoại Lệ và Không Xử Lý
Trong ví dụ này, chúng ta tạo một phương thức validate()
nhận một tham số là giá trị tuổi. Nếu tuổi dưới 18, chúng ta ném ra một ngoại lệ ArithmeticException
, nếu không, chúng ta in ra một thông báo "welcome".
public class TestThrow1 {
static void validate(int age) {
if (age < 18)
throw new ArithmeticException("not valid");
else
System.out.println("welcome");
}
public static void main(String args[]) {
validate(13);
System.out.println("rest of the code...");
}
}
Exception in thread "main" java.lang.ArithmeticException: not valid
Ví Dụ 2 Ném Ra Ngoại Lệ và Xử Lý
Trong ví dụ này, chúng ta sử dụng throw
để ném ra một ArithmeticException
, nhưng chúng ta cũng có một khối catch
để xử lý ngoại lệ này.
public class TestThrow2 {
static void validate(int age) {
try {
if (age < 18)
throw new ArithmeticException("not valid");
else
System.out.println("welcome");
} catch (ArithmeticException ex) {
System.out.println(ex.getMessage());
}
}
public static void main(String args[]) {
validate(13);
System.out.println("rest of the code...");
}
}
not valid rest of the code...
Trong cả hai ví dụ trên, chúng ta đã sử dụng từ khóa throw
để tạo ra một ngoại lệ và quyết định cách xử lý nó. Việc sử dụng throw
cho phép chúng ta tạo ra và quản lý các tình huống ngoại lệ một cách tường minh trong chương trình Java của mình.