CÁC GIẢI PHÁP LẬP TRÌNH C# - Trang 636

636
Chương 16: Các giao diện và mẫu thông dụng

new Person("Mr", "Richard", "Glen", "David", "Peters");

// Hiển thị tên bằng nhiều format string khác nhau.

System.Console.WriteLine("Dear {0:G},", person);

System.Console.WriteLine("Dear {0:P},", person);

System.Console.WriteLine("Dear {0:I},", person);

System.Console.WriteLine("Dear {0},", person);

System.Console.WriteLine("Dear {0:S},", person);

Khi được thực thi, đoạn mã này sinh ra kết xuất như sau:

Dear Richard Peters,

Dear Mr. R. G. D. Peters,

Dear Richard,

Dear Richard Peters,

Dear R. Peters,

7.

7.

Hi n th c l p ngo i l tùy bi n

ự ớ

ạ ệ

ế

Hi n th c l p ngo i l tùy bi n

ự ớ

ạ ệ

ế

Bạn cần tạo một lớp ngoại lệ tùy biến sao cho bạn có thể sử dụng cơ chế thụ lý
ngoại lệ của bộ thực thi để thụ lý các ngoại lệ đặc-trưng-ứng-dụng.

Tạo một lớp khả-tuần-tự-hóa, thừa kế lớp

System.ApplicationException

và hiện

thực các phương thức khởi dựng với chữ ký như sau:

public CustomException() : base() {}

public CustomException(string message) : base(message) {}

public CustomException(string message, Exception inner)

: base(message, inner) {}

Thêm bất cứ thành viên dữ liệu tùy biến nào mà ngoại lệ cần đến, bao gồm các phương thức
khởi dựng và các thuộc tính cần thiết để thao tác các thành viên dữ liệu.
Các lớp ngoại lệ là duy nhất, bạn không được khai báo các lớp mới để hiện thực chức năng
mới hay mở rộng. Cơ chế thụ lý ngoại lệ của bộ thực thi (được trưng ra bởi các lệnh:

try

,

catch

, và

finally

) làm việc dựa trên kiểu ngoại lệ bị ném, chứ không phải các thành viên

chức năng hay dữ liệu được hiện thực bởi ngoại lệ bị ném.
Nếu cần ném một ngoại lệ, bạn nên sử dụng một lớp ngoại lệ có sẵn trong thư viện lớp .NET
Framework
(nếu tồn tại một lớp phù hợp). Dưới đây là một số ngoại lệ hữu ích:

System.ArgumentNullException

—khi mã lệnh truyền một giá trị đối số

null

cho một

phương thức không hỗ trợ đối số

null

.

System.ArgumentOutOfRangeException

—khi mã lệnh truyền cho phương thức một giá

trị đối số không phù hợp (lớn quá hay nhỏ quá).

Liên Kết Chia Sẽ

** Đây là liên kết chia sẻ bới cộng đồng người dùng, chúng tôi không chịu trách nhiệm gì về nội dung của các thông tin này. Nếu có liên kết nào không phù hợp xin hãy báo cho admin.