Ch4.Xu ly Ngoai le pptx

17 309 1
Ch4.Xu ly Ngoai le pptx

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Nguyễn Đức Hiển – Bài giảng Lập trình Java 1 Java Object-Oriented Programming  Giảng viên : Nguyễn Đức Hiển  Email : ndhien@udn.vn  Website :  Thời lượng  thuyết : 2 tín chỉ (30 tiết)  Thực hành + thảo luận : 1 tín chỉ Nguyễn Đức Hiển – Bài giảng Lập trình Java 2 Chương 4 Xử Ngoại lệ (Processing Exception) Nguyễn Đức Hiển – Bài giảng Lập trình Java 3 Nội dung  Ngoại lệ là gì ?  Xử Ngoại lệ Nguyễn Đức Hiển – Bài giảng Lập trình Java 4 Giới thiệu  Java có sẵn cơ chế cho việc kiểm soát lỗi và bẫy lỗi  Cơ chế này giải quyết những sự kiện bất thường hay mã xử cản trở chương trình tiếp tục thực hiện như:  Truy cập ngoài giới hạn mảng  Chia cho 0  Những con trỏ Null  …  Các Ngoại lệ (Exception) cho phép chúng ta kiểm soát các sự kiện này tự động khi chúng xảy ra Nguyễn Đức Hiển – Bài giảng Lập trình Java 5 Ngoại lệ là gì?  Một Ngoại lệ (Exception) là một lớp Java  Có nhiều lớp dẫn xuất của lớp Exception, mỗi lớp tương ứng với một kiểu lỗi khác nhau hay sự kiện bất thường mà chúng ta muốn kiểm soát  Cách Java phát sinh Ngoại lệ  Khi có lỗi hoặc sự kiện bất thường xuất hiện trong đoạn chương trình, Java sẽ throw (ném ra) một Ngoại lệ.  Điều này có nghĩa rằng nó sẽ khởi tạo một lớp dẫn xuất của lớp Exception.  Khi đó phải cần một cơ chế để catching (bắt) trong đoạn chương trình đó. Nguyễn Đức Hiển – Bài giảng Lập trình Java 6 Ném Ngoại lệ  Thực chất, việc ném ra các Ngoại lệ trong Java là một cách phương thức kết thúc xử  Ví dụ: Nguyễn Đức Hiển – Bài giảng Lập trình Java 7 Bắt Ngoại lệ (Catching Exception)  Lúc bạn gọi một phương thức đã được khai báo có khả năng ném ra một Ngoại lệ, bạn có thể bắt Ngoại lệ sử dụng một khối try/catch.  Nếu Ngoại lệ được ném bên trong khối try, đối tượng Ngoại lệ được truyền như một đối số tới khối catch ở đó Ngoại lệ có thể được kiểm soát Nguyễn Đức Hiển – Bài giảng Lập trình Java 8 Bắt Ngoại lệ (Catching Exception)  Trong hầu hết các trường hợp, nếu một phương thức có thể ném ra một Ngoại lệ và bạn muốn gọi nó thì bạn phải xử Ngoại lệ của phương thức đó  Tuy nhiên, nếu Ngoại lệ mà phương thức ném ra là một lớp dẫn xuất của lớp RunTimeException thì không cần phải tường minh bắt Ngoại lệ (điều này bao gồm IndexOutOfBoundsException từ ví dụ trước)  Nếu một RunTimeException được ném ra và không được bắt, Java sẽ tự động abort (bỏ dở) chương trình và in chồng vệt tin của ngoại lệ. Nguyễn Đức Hiển – Bài giảng Lập trình Java 9 RunTimeException  Một số lớp dẫn xuất của lớp RunTimeException  ArithmeticException  IndexOutOfBoundsException  NegativeArraySizeException  NullPointerException  ArrayStoreException  ClassCastException  IllegalArgumentException  SecurityException  IllegalMonitorStateException  IllegalStateException  UnsupportedOperationException Nguyễn Đức Hiển – Bài giảng Lập trình Java 10 Xử Ngoại lệ  Xử Ngoại lệ có thể sử dụng khối try/catch.  Ngoài ra, trong các phương thức ném ra cùng Ngoại lệ có thể chuyển việc bắt Ngoại lệ cho đoạn code gọi phương thức đó. [...]... dụng lớp cơ sở Exception  Ví dụ:  Nguyễn Đức Hiển – Bài giảng Lập trình Java Khối finally Đôi khi, khi gọi khối try/catch, một Ngoại lệ có thể được ném ra trước khi một số đoạn mã quan trọng cần được chạy ở cuối của khối try  Khối finally có thể được sử dụng chạy mã này  Dù một ngoại lệ được ném ra, khối finally luôn luôn thực hiện  Nguyễn Đức Hiển – Bài giảng Lập trình Java Ném lại Ngoại lệ Bạn... rằng phương thức gọi có khả năng ném Ngoại lệ  Ví dụ:  Nguyễn Đức Hiển – Bài giảng Lập trình Java Một số Ngoại lệ  Các lớp Ngoại lệ:  IOException  NumberFormatedException  InterruptedException  FileNotFoundException …  Các thông tin từ các đối tượng Ngoại lệ  getCause()  getMessage()  printStackTrace()  Bạn cũng có thể định nghĩa lớp Ngoại lệ của mình nhưng phải là một lớp dẫn xuất của lớp . dẫn xu t của lớp Exception, mỗi lớp tương ứng với một kiểu lỗi khác nhau hay sự kiện bất thường mà chúng ta muốn kiểm soát  Cách Java phát sinh Ngoại lệ  Khi có lỗi hoặc sự kiện bất thường xu t. lớp dẫn xu t của lớp RunTimeException  ArithmeticException  IndexOutOfBoundsException  NegativeArraySizeException  NullPointerException  ArrayStoreException  ClassCastException  IllegalArgumentException  SecurityException  IllegalMonitorStateException  IllegalStateException  UnsupportedOperationException Nguyễn. RunTimeException  ArithmeticException  IndexOutOfBoundsException  NegativeArraySizeException  NullPointerException  ArrayStoreException  ClassCastException  IllegalArgumentException  SecurityException  IllegalMonitorStateException  IllegalStateException  UnsupportedOperationException Nguyễn Đức Hiển – Bài giảng

Ngày đăng: 27/06/2014, 07:20

Từ khóa liên quan

Mục lục

  • Java Object-Oriented Programming

  • Chương 4

  • Nội dung

  • Giới thiệu

  • Ngoại lệ là gì?

  • Ném Ngoại lệ

  • Bắt Ngoại lệ (Catching Exception)

  • Slide 8

  • RunTimeException

  • Xử lý Ngoại lệ

  • Nhiều khối catch

  • Slide 12

  • Khối finally

  • Ném lại Ngoại lệ

  • Một số Ngoại lệ

  • Tóm lại

  • Slide 17

Tài liệu cùng người dùng

Tài liệu liên quan