Try, catch trong C++

Cách bắt ngoại lệ trong java ?

Cách sử dụng khối try – catch

Khối try / catch được đặt xung quanh một đoạn chương trình dễ phát sinh ngoại lệ, cùng xem cú pháp

1

2

3

4

5

6

cố gắng{

//khối lệnh 1;

}

catch( ngoại_lệ_1 e1){

//khối lệnh 2;

}

Khối lệnh 1. Is an command command easy out of invalid. Khi một ngoại lệ xảy ra phải được xử lý trong khối bắt liên kết với nó

Ngoại lệ 1. Là tên của ngoại lệ mà bạn muốn bắt trong khối lệnh 1

Ví dụ về bắt ngoại lệ bằng khối try – catch

Ta sẽ tạo một mảng 2 phần tử và sau đó cố gắng truy cập vào phần tử thứ 3. Khi đó chương trình sẽ ném ra một ngoại lệ ArrayIndexOutOfBoundsException

Java

1

2

3

4

5

6

7

8

9

10

11

lớp công khai DemoJava {

    công khai tĩnh vô hiệu chính(String[] args) {

        int[] a = {1,2};

        thử{

            Hệ thống. ra. println(a[3]);

        }catch (ArrayIndexOutOfBoundsException e){

            Hệ thống. ra. println("Ngoai le phat sinh. " + e );

        }

        Hệ thống. ra. in("Thoat khoi khoi try/catch");

    }

}

Sau khi chạy chương trình trên sẽ cho ra kết quả

1

2

ngoại lệ phát sinh. java. lang thang. ArrayIndexOutOfBoundsException. 3

Thoái mái khởi try/catch

Lưu ý. The you can started exception one way sumo bằng cách sử dụng Exception

Nhiều khối bắt

Một khối thử có thể được theo sau bởi nhiều khối bắt. Cùng xem cách khai báo

Java

1

2

3

4

5

6

7

8

9

cố gắng{

//khối lệnh 1;

}

catch( ngoại_lệ_1 e1){

//khối lệnh;

}

bắt( ngoại_lệ_2 e2){

//khối lệnh;

}

Ở đây mình trình bày hai khối bắt nhưng bạn có thể tạo ra nhiều khối bắt hơn. Nếu một ngoại lệ xảy ra trong khối thử, ngoại lệ sẽ được ném vào trong khối bắt thứ nhất. Nếu dữ liệu của ngoại lệ kiểu dữ liệu bị ném khớp với ngoại_ệ_1 thì nó sẽ bị bắt tại đây. Nếu ngoại lệ sẽ được chuyển đến khối thứ hai. Lệnh này cứ tiếp tục đến khi ngoại lệ bị bắt bởi một khối bắt hoặc ngoại lệ đi qua hết các khối bắt

Ví dụ

Đây là đoạn mã hiển thị cách sử dụng khối try – catch với nhiều khối bắt

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

nhập java. io. *;

lớp công khai DemoJava {

    công khai tĩnh vô hiệu chính(String[] args) {

        int x;

        FileInputStream tệp;

        thử {

            tệp = mới FileInputStream("input.txt");

            x = (byte) file.đọc();

        } bắt (FileNotFoundException f){

            Hệ thống. ra. println(f);

        } catch (IOException i) {

            Hệ thống. ra. println(i);

        }

    }

}

Sau khi chạy sẽ nhận được kết quả

1

java. io. FileNotFoundException. đầu vào. txt (Hệ thống không thể tìm thấy tệp được chỉ định)

khối cuối cùng

Khối cuối cùng là khối cuối cùng theo sau khối thử. Một khối cuối cùng luôn luôn chạy cho dù có ngoại lệ hay không. Thường sử dụng khối cuối cùng để đóng các tệp, hoặc dọn dẹp tài nguyên