Xử lí ngoại lệ trong C#

15 439 2
Xử lí ngoại lệ trong C#

Đ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

 Exception Handling     !"#!"$%&%'()*+,-./012+*' (30)042*2-  5#+6#72089#:%!(;"+6#72!)%<=)>/0 +?'$*)+@A$B+6#7!2*4%7,  C)DE";A00%&'+6+@F1@A! !%&.2=C2)A0)"2A+G" H2%&*+, I  H?J2*+,/0*0<(KL2#M7@(0%(K#A+,2*'"" 32  C42%&?"3"(K/4*4N?4%&?N?"3"(K /8C5O3*.P0@+G"(KL#M2*11  O"J*2-*+,4%4*'3)2*+,/0 )BQ0%; 32R  J@S0&2  J$/J'Q0@S02  J%;?'A02  J%;32%?A0 T@S0& 2  TJ@%4M0M)0((5?(UR  VA(85F0((2W)N0((2*%4M0<4 )4M0((A  VA(8VA(5F#7)2*+,(0602AQ08C5O#:F V0%XYZ5A0%1@Q0V0%*BA=  VA(8[05F#7)2*+,*LP0\)-S0 ]1@0A #7  ]#[((5FA!*4)$%&*+,/A!  ^#A_5F0`  a05F%&**L#2  b#XXcd05F+,)e(;Q000Af(=  Cdc5F04%&,  [C5F*;(;A  b0#0(5F/)%&,  [5F0(;%N )1Q0@ 5W)  gT%h(iFjdT#D*4J! JZ(S0&*BA*Q2  ^00hb^0AiF!,) %Af0#!$*LP0 *L1A  gd(hiF-0Q02  b5h5iF42A*+,/M$1%;0?S0*<*;+, 23*2-%;0  ]((0h(iF&2  Vh(iF$S#: *;+,A0  V0%O0h(iF#k+GSN(0%  O0Vh]#0(iF*;+,&+GSA02 C/2@M%?0 Z public class Humans { public int Age { get { return Age; } set { if (value >= 0) { Age = value; Console.WriteLine(“Tuoi la {0}”, Age); } else throw new Exception(“Tuoi khong chinh xac”); } } } H1*;+,A0*;+,A?' /*2#N?@M%?0Z) *+,/0J*;+,S0&2 I2@%; Al0 static void Main(string[] args) { Console.WriteLine(“Simple Exception Example”); Humans a = new Humans() { Age = 30; } try { for (int i = 0; i < 4; i++) a.Age -= 10; } catch (Exception e) { Console.WriteLine(“Exception Message: {0}”, e.Message); } } m'I20(3#:%;Al08H; A#7*'S0*2?%n/02 8H;0(KI2*'3 I2@%; Al0  o#:$0WQ00;pBMqr;srJrrlJr"A0(Q0+GS[ (K/0J28V0*?%;0(KI2A0"&) Kết quả: Tuoi la 30 Tuoi la 20 Tuoi la 10 Tuoi la 0 Exception Message: Tuoi khong chinh xac m'I20(3#:%;Al08H; A#7*'S0*2?%n/02 8H;0(KI2*'3 [...]... những ngoại lệ không được viết trong C# hoặc không được quản trong C# Ví dụ trong C++, mọi biến đều có thể được ném ra như 1 ngoại lệ, nếu ta gọi đoạn mã này trong C++, nó sẽ bắt được các ngoại lệ không dẫn xuất từ class System.Exception Khối catch không có tham catch số { Console.WriteLine(“Co loi nao do xay ra”); }  Nhiều khi chúng ta cần phải thực hiện 1 vài lệnh dù cho có hoặc không xảy ra ngoại. .. dù cho có hoặc không xảy ra ngoại lệ Ví dụ: khi ta mở 1 file và thao tác trên file đó, dù có hoặc không xảy ra ngoại lệ thì ta vẫn phải đóng file lại Khối lệnh finally  Một cách giải quyết là đưa cậu lệnh đóng file vào trong cả khối try và khối catch Tuy nhiên cách này gây ra sự trùng lặp lệnh  C# cung cấp khối lệnh finally để thực hiện thao tác này Ví dụ về khối lệnh try-catch-finally string path... Bắt ngoại lệ với nhiều khối catch Khi chạy: Nhap 1 so tu 1 den 10, nhap rong de thoat: 5 So ban nhap la 5 Nhap 1 so tu 1 den 10, nhap rong de thoat: 20 Co loi! Ban phai nhap so tu 1 den 10! Ban da nhap so 20 Nhap 1 so tu 1 den 10, nhap rong de thoat: abc Co loi! Input string was not in a correct format Nhap 1 so tu 1 den 10, nhap rong de thoat:  Khối catch không có tham số sẽ bắt được mọi ngoại lệ. ..Bắt ngoại lệ với nhiều khối catch while (true) { try { Console.Write(“Nhap 1 so tu 1 den 10, nhap rong de thoat: ”); string input = Console.ReadLine(); if (input == “”) break; int index = Convert.ToInt32(input); . Console.WriteLine(“Simple Exception Example”); Humans a = new Humans() { Age = 30; } try { for (int i = 0; i < 4; i++) a.Age -= 10; } catch (Exception e) { Console.WriteLine( Exception Message:.  Exception Handling     !"#!"$%&%'()*+,-./012+*' (30)042*2-  5#+6#72089#:%!(;"+6#72!)%<=)>/0 +?'$*)+@A$B+6#7!2*4%7,  C)DE";A00%&'+6+@F1@A! !%&.2=C2)A0)"2A+G" H2%&*+, I  H?J2*+,/0*0<(KL2#M7@(0%(K#A+,2*'"" 32  C42%&?"3"(K/4*4N?4%&?N?"3"(K /8C5O3*.P0@+G"(KL#M2*11  O"J*2-*+,4%4*'3)2*+,/0 )BQ0%; 32R  J@S0&2  J$/J'Q0@S02  J%;?'A02  J%;32%?A0 T@S0& 2  TJ@%4M0M)0((5?(UR  VA(85F0((2W)N0((2*%4M0<4. index > 10) throw new IndexOutOfRangeException(“Ban da nhap so ” + input); Console.WriteLine(“So ban nhap la {0}”, index); } catch(IndexOutOfRangeException e) { Console.WriteLine(“Co loi!

Ngày đăng: 18/04/2014, 16:25

Từ khóa liên quan

Mục lục

  • Slide 1

  • Phân biệt bug, error và exception

  • Khi ngoại lệ không được bắt

  • Các thành phần của khối lệnh xử lí ngoại lệ trong C#

  • Lớp chứa thông tin về ngoại lệ

  • Một vài lớp exception hay dùng

  • Các thuộc tính của lớp Exception tổng quát

  • Ném ngoại lệ với từ khóa throw

  • Bắt ngoại lệ với khối lệnh try-catch

  • Bắt ngoại lệ với khối lệnh try-catch

  • Bắt ngoại lệ với nhiều khối catch

  • Bắt ngoại lệ với nhiều khối catch

  • Khối catch không có tham số

  • Khối lệnh finally

  • Ví dụ về khối lệnh try-catch-finally

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

Tài liệu liên quan