Thuyết trình Java Arrays Thuyết trình Java Arrays Thuyết trình Java Arrays Thuyết trình Java Arrays Thuyết trình Java Arrays Thuyết trình Java Arrays Thuyết trình Java Arrays Thuyết trình Java Arrays Thuyết trình Java Arrays Thuyết trình Java Arrays Thuyết trình Java Arrays Thuyết trình Java Arrays Thuyết trình Java Arrays Thuyết trình Java Arrays Thuyết trình Java Arrays Thuyết trình Java Arrays Thuyết trình Java Arrays Thuyết trình Java Arrays Thuyết trình Java Arrays Thuyết trình Java Arrays Thuyết trình Java Arrays Thuyết trình Java Arrays Thuyết trình Java Arrays Thuyết trình Java Arrays Thuyết trình Java Arrays
Trang 1Chapter 11 Exception Exception
Khối try-catch
Khối finally
Từ khóa throw
Trang 2Exception là gì?
Exception là một sự kiện mà phá vỡ luồng chuẩn của chương trình Nó là một đối tượng mà được ném tại Runtime Một exception (ngoại lệ) trong Java là một vấn đề xảy ra trong quá trình thực hiện của chương trình
Một ngoại lệ có thể xảy ra với nhiều lý do khác nhau :
- Người dùng nhập dữ liệu không hợp lệ
- Một file cần được mở nhưng không thể tìm thấy
- Kết nối mạng bị ngắt trong quá trình thực hiện giao tiếp hoặc JVM (Java Virtual Machine tạo ra môi trường
máy ảo để thực thi mã java bytecode) hết bộ nhớ
Trang 3Checked Exception - Unchecked Exception
Checked Exception: Là ngoại lệ thường xảy ra do người dùng mà không thể lường trước được bởi lập trình viên
Ví dụ, một file được mở, nhưng file đó không thể tìm thấy và ngoại lệ xảy ra Những ngoại lệ này không thể được
bỏ qua trong quá trình biên dịch Checked Exception là các lớp mà kế thừa lớp Throwable
Unchecked Exception: Một ngoại lệ xảy ra ở runtime là ngoại lệ có thể tránh được bởi lập trình viên
Unchecked Exception là các lớp kế thừa RuntimeException
Trang 4Khối try-catch
Khối try trong Java được sử dụng để bao quanh code mà có thể xử lý một Exception Nó phải được sử dụng bên trong phương thức Khối try phải được theo sau bởi hoặc khối catch hoặc khối finally Khối catch trong Java được sử dụng để xử lý các Exception Nó phải được sử dụng chỉ sau khối try
public class TryCatch {
public static void main(String[] args) {
int arrInt[] = {1, 2, 4, 7, 10};
try {
System.out.println ("arrInt[6] = " + arrInt[6]);
} catch (ArrayIndexOutOfBoundsException e2) {
System.out.println ("Lỗi! Vượt quá chỉ mục của mảng! " + e2);
}
}
}
run:
Lỗi! Vượt quá chỉ mục của mảng! java.lang.ArrayIndexOutOfBoundsException: 6 BUILD SUCCESSFUL (total time: 0 seconds)
Trang 5Khối finally
Khối finally trong là một khối được sử dụng để thực thi các phần code quan trọng như đóng kết nối, đóng stream, … Khối finally luôn luôn được thực thi dù cho exception có được xử lý hay không Khối finally phải được theo sau bởi khối try hoặc khối catch
class ViduFinally{
public static void main(String[] args){
try {
int x=300;
} catch (Exception e){System out println(e);}
finally {System.out.println ("Khối finally được thực thi" );}
}
}
run:
Khối finally được thực thi BUILD SUCCESSFUL (total time: 0 seconds)
Trang 6Từ khóa throw trong Java được sử dụng để ném tường minh một exception Chúng ta có thể ném hoặc Checked
Exception hoặc Unchecked Exception trong Java bởi từ khóa throw Từ khóa throw được sử dụng chủ yếu để ném các Custom Exception (là các exception được định nghĩa bởi lập trình viên)
Từ khóa throw
public class TestThrow{
static void validate( int tuoi){
if (tuoi<18)
else
System.out.println( "Hợp lệ " );
}
public static void main(String args[]){
validate(19);
}
}
run:
Hợp lệ SUCCESSFUL (total time: 0 seconds)
// phương thức validate mà nhận giá trị nguyên như là một tham số