Có một vài sự khác nhau giữa từ khóa throw và throws trong java được mô tả trong bảng dưới đây.
| No. | throw | throws |
|---|---|---|
| 1) | Từ khóa throw trong java được sử dụng để ném ra một ngoại lệ rõ ràng. | Từ khóa throws trong java được sử dụng để khai báo một ngoại lệ. |
| 2) | Ngoại lệ checked không được truyền ra nếu chỉ sử dụng từ khóa throw. | Ngoại lệ checked được truyền ra ngay cả khi chỉ sử dụng từ khóa throws. |
| 3) | Sau throw là một instance. | Sau throws là một hoặc nhiều class. |
| 4) | Throw được sử dụng trong phương thức. | Throws được khai báo ngay sau dấu đóng ngoặc đơn của phương thức. |
| 5) | Bạn không thể throw nhiều exceptions. | Bạn có thể khai báo nhiều exceptions, Ví dụ: public void method()throws IOException,SQLException. |
Nội dung chính
Ví dụ về throw trong java
void m() {
int n;
if (n < 0) {
throw new ArithmeticException("sorry");
}
}
Ví dụ về throws trong java
void m()throws ArithmeticException {
//method code
}
Ví dụ về throw và throws trong java
void m() throws ArithmeticException {
throw new ArithmeticException("sorry");
}