
Viet Anh Phan – K12 1
X lý ngo i l (Exception)ử ạ ệ
1. Phát sinh và b t gi ngo i l .ắ ữ ạ ệ
2. Câu l nh throw.ệ
3. Câu l nh catch.ệ
4. Câu l nh finally.ệ
5. Nh ng đ i t ng ngo i l .ữ ố ượ ạ ệ
6. T o riêng các ngo i l .ạ ạ ệ
7. Phát sinh l i ngo i l .ạ ạ ệ

Viet Anh Phan – K12 2
Ngo i lạ ệ
- Ngo i l là 1 đ i t ng ch a các thông tin v s ạ ệ ố ượ ứ ề ự
c c a ch ng trình trong th i đi m ch y.ố ủ ươ ờ ể ạ
-Bug và Error: Bug là các l i v m t l p trình. V i ỗ ề ặ ậ ớ
bug, ng i l p trình ph i s a code cho đúng. ườ ậ ả ử
Error là l i do ng i s d ng. Ví d v i d li u ỗ ườ ử ụ ụ ớ ữ ệ
ki u s nh ng ng i dùng nh p ki u ký t , xâu ể ố ư ườ ậ ể ự
ký t . V i error ng i l p trình có th tiên đoán ự ớ ườ ậ ể
và h n ch các l i này.ạ ế ỗ
-C Bug và error đ u phát sinh ngo i l .ả ề ạ ệ

Viet Anh Phan – K12 3
C u trúc kh i l nh x lý l iấ ố ệ ử ỗ
try
{
}
catch[(Exception ex)]
{
}
finally
{
}

Viet Anh Phan – K12 4
Kh i l nh x lý l iố ệ ử ỗ
-Kh i l nh try th ng đ t bao quanh kh i l nh ố ệ ườ ặ ố ệ
ti m n gây ra nguy hi m.ề ẩ ể
-Khi kh i l nh đ c bao b i try phát sinh ngo i l . ố ệ ượ ở ạ ệ
catch đ c dùng đ b t ngo i l . Kh i l nh trong ượ ể ắ ạ ệ ố ệ
catch dùng đ x lý l i.ể ử ỗ

Viet Anh Phan – K12 5
L nh throwệ
- L nh throw: đ phát sinh ra ngo i l .ệ ể ạ ệ
Cú pháp: throw objException.
+ objException: là đ i t ng ki u Exception ho c ố ượ ể ặ
các d n xu t c a nó.ẫ ấ ủ
-Khi phát sinh ngo i l l p t c d ng vi c th c thi ạ ệ ậ ứ ừ ệ ự
ch ng trình, CLR s tìm ki m trình x lý ngo i ươ ẽ ế ử ạ
l . N u không tìm th y trong ph ng th c hi n ệ ế ấ ươ ứ ệ
th i thì s tìm trong ph ng th c g i. N u đ n ờ ẽ ươ ứ ọ ế ế
hàm Main() v n không có trình x lý s ki n thì ẫ ử ự ệ
CLR s d ng ch ng trình. ẽ ừ ươ
-Ví d : ụ

