Xử lý ngoại lệ

Một phần của tài liệu Giáo trình lập trình ứng dụng Công nghệ thông tin (Trang 40 - 45)

Chương 2 NỀN TẢNG C# CƠ BẢN

2.7 Xử lý ngoại lệ

2.7.1 Xử lý ngoại lệ (Exception)

Xử lý ngoại lệ là một vấn đề xuất hiện trong khi thực thi chương trình. Một

Exception trong C# là phản hồi về một tình huống ngoại lệ xuất hiện trong khi chương

trình đang chạy. Ví dụ trong chương trình có phép tốn chia cho Zero(khơng), trường hợp này sẽ phát sinh ngoại lệ không chia được cho Zero và chúng ta muốn chương trình vẫn tiếp tục chạy thì chúng ta phải xử lý trường hợp ngoại lệ khi chia cho Zero.

Xử lý ngoại lệ: Khi chia cho Zero. Xử lý ngoại lệ trong C# được xây dựng trên những từ khóa: try, catch, finally, throw.

try: Khối lệnh chương trình mà ở đó có thể phát sinh ra các ngoại lệ.

catch: Xử lý ngoại lệ tại vị trí trong chương trình phát sinh ngoại lệ cần được xử

lý, từ khóa catch trong C# chỉ dẫn bắt một xử lý ngoại lệ.  finally: Thực thi một tập lệnh đã cho.

throw: Ném lỗi khi xuất hiện vấn đề, được dùng từ khóa throw trong C#. 2.7.2 Cú pháp chung khi xử lý ngoại lệ

try {

// các lệnh thực thi chương trình có thể gây ra ngoại lệ (Exception) }

catch( tên các ngoại lệ e1) {

Trang 35 // các lệnh xử lý ngoại lệ }

catch( tên các ngoại lệ e2) {

// các lệnh xử lý ngoại lệ }

catch( tên các ngoại lệ en) { // các lệnh xử lý ngoại lệ } finally { // các lệnh thực thi } 2.7.3 Lớp Exception trong C#

Các Exception trong C# được biểu diễn bởi các lớp, các lớp Exception trong C# chủ yếu kế thừa từ lớp System.Exception. Một số lớp kế thừa từ lớp Exception là

ApplicationException và SystemException.

Lớp ApplicationException hỗ trợ các Exception được tạo bởi chương trình ứng dụng.

SystemException: Là lớp cơ sở cho tất cả SystemException

2.7.4 Một số lớp Exception kế thừa từ lớp SystemException

Lớp Exception Mô tả

System.IO.IOException Xử lý ngoại lệ về nhập/ xuất

System.IndexOutOfRangeException Xử lý ngoại lệ khi một phương thức tham chiếu tới một chỉ mục bên ngoài dãy mảng.

System.ArrayTypeMismatchException Xử lý ngoại lệ khi kiểu là không phù hợp với kiểu mảng

System.NullReferenceException Xử lý ngoại lệ từ việc tham chiếu một đối tượng null.

System.DivideByZeroException Xử lý ngoại lệ khi chia cho số 0. System.InvalidCastException Xử lý ngoại lệ trong khi ép kiểu.

Trang 36

System.OutOfMemoryException Xử lý ngoại lệ việc thiếu bộ nhớ

System.StackOverflowException Xử lý ngoại lệ việc tràn ngăn xếp (stack) Ví dụ 1: Xử lý ngoại lệ khi chương trình chia cho zero

Kết quả chương trình

Trang 37

Kết quả chương trình: Nếu có tập tin thì chương trình sẽ đọc nội dung của tập tin ghi ra màn hình

Trang 38

Nếu khơng ghi đúng đường dẫn chương trình sẽ ghi ra trên màn hình

Trang 39

Một phần của tài liệu Giáo trình lập trình ứng dụng Công nghệ thông tin (Trang 40 - 45)

Tải bản đầy đủ (PDF)

(165 trang)