![Phân tích tư tưởng của nhân dân qua đoạn thơ: Những người vợ nhớ chồng… Những cuộc đời đã hóa sông núi ta trong Đất nước của Nguyễn Khoa Điềm](https://timtailieu.net/upload/document/136415/phan-tich-tu-tuong-cua-nhan-dan-qua-doan-tho-039-039-nhung-nguoi-vo-nho-chong-nhung-cuoc-doi-da-hoa-song-nui-ta-039-039-trong-dat-nuoc-cua-nguyen-khoa-136415.jpg)
Xử lý ngoại lệ - ThS Nguyễn Hà Giang
Số trang: 0
Loại file: pdf
Dung lượng: 296.80 KB
Lượt xem: 17
Lượt tải: 0
Xem trước 10 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Tình huống Những lỗi phát sinh khi rutime có thểlàm hư hại chương trìnhCó thể không phải lỗi lập trình VD: một số tình huống viết dữ liệu vàofile Đĩa bị đầyLỗi phần cứngFile bị thay đổi thành chỉ đọc Không thể truy cập, truy vấn CSDL
Nội dung trích xuất từ tài liệu:
Xử lý ngoại lệ - ThS Nguyễn Hà GiangXử lý ngoại lệ HD: ThS Nguyễn Hà Giang Khoa CNTT - HutechNội dung Tình huống phát sinh ngoại lệu Cách xử lý ngoại lệ làm việc trong C#u Câu lệnh try-catch-finallyuTình huống Những lỗi phát sinh khi rutime có thểu làm hư hại chương trình Có thể không phải lỗi lập trìnhu VD: một số tình huống viết dữ liệu vàou file Đĩa bị đầy v Lỗi phần cứng v File bị thay đổi thành chỉ đọc v Không thể truy cập, truy vấn CSDL v … vCách xử lý trước đây GET A FILENAME OPEN THE FILE IF THERE IS NO ERROR OPENING THE FILE READ SOME DATA IF THERE IS NO ERROR READING THE DATA PROCESS THE DATA WRITE THE DATA IF THERE IS NO ERROR WRITING THE DATA CLOSE THE FILE IF THERE IS NO ERROR CLOSING FILE RETURN Hầu hết các bước có khả năng thất bạiu Khó xác định chính xác lỗi từ những thôngu tin trả về của hàm thư viện Đoạn code phải thực hiện rồi mới biết lỗi!uCách xử lý Exception TRY TO DO THESE THINGS: GET A FILENAME OPEN THE FILE READ SOME DATA PROCESS THE DATA WRITE THE DATA CLOSE THE FILE RETURN IF ERROR OPENING THE FILE THEN ... IF ERROR READING THE DATA THEN ... IF ERROR WRITING THE DATA THEN ... IF ERROR CLOSING THE FILE THEN ... Đoạn code xử lý ngắn gọn, dễ đọcu Logic chương trình hợp lý hơn, những đoạn nghiu ngờ có lỗi nằm trong vùng Try Cho phép xử lý tình huống lỗi rõ ràng và đơn giản!uCác đối tượng Exception Trong C#, khi runtime error xuất hiệnu CLR sẽ xác định lỗi và phát sinh ta đối v tượng Exception Đối tượng Exception này được ném trở lại v stack chờ cho một phương thức bắt lỗi đó. Nếu Exception này không được chương v trình “catch” thì CRL sẽ in ra thông điệp lỗiMô hình gọi – xử lý Exception CLR Runtime Method Calls Travel The Main( ) Down method Exceptions First Method Passed Up Exception Thrown HereSử dụng try-catch Dùng try-catch để xử lý ngoại lệu Đặt code có khả năng dẫn đến ngoại lệ v vào khối “try” Cung cấp các khối “catch” theo sau “try” v Có thể cung cấp tất cả catch cho các lỗi v nếu muốn xử lý, bằng cách sử dụng các lớp exception thích hợp Nếu không cung cấp “catch” cho một v ngoại lệ, thì exception này được lan truyền lên trên.Cú pháp try-catch Code có khả năng dẫn đến lỗi try { Tham số exception RiskyBussiness(); được catch } catch (SomeException e ) Đoạn xử lý với tình { huống có lỗi // Handle code }Khối try Bao gồm các phầnu Từ khóa try v Theo sau khối “{…}” v Khối “{…}” bắt buộc phải có, khác với v “{…}” trong if hay for Bên trong khối tryu Đặt bất cứ câu lệnh nào có khả năng phát v sinh ra ngoại lệKhối catch Đặt một hay nhiều ngay sau khối tryu Không có lệnh nào chen giữa hai khối v catch của một khối try Cú pháp khối catch như sauu catch (Exception-class [var1]) { // xử lý ngoại lệ 1 } catch (Exception-class [var2]) { // xử lý ngoại lệ 2 }Ví dụ try-catchChương trình bị terminate Chương trình kết thúc bình thườngSử dụng Finally Khi một exception được ném rau Luồng thực thi sẽ nhảy vào khối catch xử lý nó. v Một số đoạn code giải phóng tài nguyên có thể bị v bỏ qua Open File // ngoại lệ được phát sinh Read Data // đoạn code này bị bỏ qua, dù file chưa đóng Close File Khối try-catch có phần option là finally v Luôn luôn được gọi v Sử dụng để dọn dẹp các tài nguyên đang nắm v giữVD có try-catch-finally Luôn thực thi dù có hay không có ngoại lệ!Lệnh throw Cho phép ném ra một ngoại lệu Cú pháp: throw exception-object v Phát sinh ra ngoại lệLớp Exception Có 2 loại ngoại lệu Ngoại lệ phát sinh bởi chương trình v Ngoại lệ được tạo bởi CLR v Lớp System.Exception là lớp cơ sở chou tất cả lớp trong C# 2 lớp kế thừa từ lớp này:u ApplicationException: thường làm lớp cơ v bản cho lớp ngoại lệ phát sinh từ ứng dụng SystemException: do CLR phát sinh vLớp Exception (2)Một số lớp Exception thường dùng System.OutOfMemoryException v System.NullReferenceException v Syste.InvalidCastException v Syste.ArrayTypeMismatchException v System.IndexOutOfRangeException v System.ArithmeticException v System.DevideByZeroException v System.OverFlowException vTự tạo lớp exceptionVD truy xuất fileTóm tắt Exception làm cho chương trình chặtu chẽ hơn. Tránh terminate chương trình đột ngột vì những lỗi runtime Tập các lớp Exception đa dạng, baou hàm các vấn đề phát sinh lúc runtime Lớp Exception là lớp cơ sở cho các lớpu xử lý ngoại lệ trong .NET Dễ dàng định nghĩa lớp ngoại lệ, vàu phát si ...
Nội dung trích xuất từ tài liệu:
Xử lý ngoại lệ - ThS Nguyễn Hà GiangXử lý ngoại lệ HD: ThS Nguyễn Hà Giang Khoa CNTT - HutechNội dung Tình huống phát sinh ngoại lệu Cách xử lý ngoại lệ làm việc trong C#u Câu lệnh try-catch-finallyuTình huống Những lỗi phát sinh khi rutime có thểu làm hư hại chương trình Có thể không phải lỗi lập trìnhu VD: một số tình huống viết dữ liệu vàou file Đĩa bị đầy v Lỗi phần cứng v File bị thay đổi thành chỉ đọc v Không thể truy cập, truy vấn CSDL v … vCách xử lý trước đây GET A FILENAME OPEN THE FILE IF THERE IS NO ERROR OPENING THE FILE READ SOME DATA IF THERE IS NO ERROR READING THE DATA PROCESS THE DATA WRITE THE DATA IF THERE IS NO ERROR WRITING THE DATA CLOSE THE FILE IF THERE IS NO ERROR CLOSING FILE RETURN Hầu hết các bước có khả năng thất bạiu Khó xác định chính xác lỗi từ những thôngu tin trả về của hàm thư viện Đoạn code phải thực hiện rồi mới biết lỗi!uCách xử lý Exception TRY TO DO THESE THINGS: GET A FILENAME OPEN THE FILE READ SOME DATA PROCESS THE DATA WRITE THE DATA CLOSE THE FILE RETURN IF ERROR OPENING THE FILE THEN ... IF ERROR READING THE DATA THEN ... IF ERROR WRITING THE DATA THEN ... IF ERROR CLOSING THE FILE THEN ... Đoạn code xử lý ngắn gọn, dễ đọcu Logic chương trình hợp lý hơn, những đoạn nghiu ngờ có lỗi nằm trong vùng Try Cho phép xử lý tình huống lỗi rõ ràng và đơn giản!uCác đối tượng Exception Trong C#, khi runtime error xuất hiệnu CLR sẽ xác định lỗi và phát sinh ta đối v tượng Exception Đối tượng Exception này được ném trở lại v stack chờ cho một phương thức bắt lỗi đó. Nếu Exception này không được chương v trình “catch” thì CRL sẽ in ra thông điệp lỗiMô hình gọi – xử lý Exception CLR Runtime Method Calls Travel The Main( ) Down method Exceptions First Method Passed Up Exception Thrown HereSử dụng try-catch Dùng try-catch để xử lý ngoại lệu Đặt code có khả năng dẫn đến ngoại lệ v vào khối “try” Cung cấp các khối “catch” theo sau “try” v Có thể cung cấp tất cả catch cho các lỗi v nếu muốn xử lý, bằng cách sử dụng các lớp exception thích hợp Nếu không cung cấp “catch” cho một v ngoại lệ, thì exception này được lan truyền lên trên.Cú pháp try-catch Code có khả năng dẫn đến lỗi try { Tham số exception RiskyBussiness(); được catch } catch (SomeException e ) Đoạn xử lý với tình { huống có lỗi // Handle code }Khối try Bao gồm các phầnu Từ khóa try v Theo sau khối “{…}” v Khối “{…}” bắt buộc phải có, khác với v “{…}” trong if hay for Bên trong khối tryu Đặt bất cứ câu lệnh nào có khả năng phát v sinh ra ngoại lệKhối catch Đặt một hay nhiều ngay sau khối tryu Không có lệnh nào chen giữa hai khối v catch của một khối try Cú pháp khối catch như sauu catch (Exception-class [var1]) { // xử lý ngoại lệ 1 } catch (Exception-class [var2]) { // xử lý ngoại lệ 2 }Ví dụ try-catchChương trình bị terminate Chương trình kết thúc bình thườngSử dụng Finally Khi một exception được ném rau Luồng thực thi sẽ nhảy vào khối catch xử lý nó. v Một số đoạn code giải phóng tài nguyên có thể bị v bỏ qua Open File // ngoại lệ được phát sinh Read Data // đoạn code này bị bỏ qua, dù file chưa đóng Close File Khối try-catch có phần option là finally v Luôn luôn được gọi v Sử dụng để dọn dẹp các tài nguyên đang nắm v giữVD có try-catch-finally Luôn thực thi dù có hay không có ngoại lệ!Lệnh throw Cho phép ném ra một ngoại lệu Cú pháp: throw exception-object v Phát sinh ra ngoại lệLớp Exception Có 2 loại ngoại lệu Ngoại lệ phát sinh bởi chương trình v Ngoại lệ được tạo bởi CLR v Lớp System.Exception là lớp cơ sở chou tất cả lớp trong C# 2 lớp kế thừa từ lớp này:u ApplicationException: thường làm lớp cơ v bản cho lớp ngoại lệ phát sinh từ ứng dụng SystemException: do CLR phát sinh vLớp Exception (2)Một số lớp Exception thường dùng System.OutOfMemoryException v System.NullReferenceException v Syste.InvalidCastException v Syste.ArrayTypeMismatchException v System.IndexOutOfRangeException v System.ArithmeticException v System.DevideByZeroException v System.OverFlowException vTự tạo lớp exceptionVD truy xuất fileTóm tắt Exception làm cho chương trình chặtu chẽ hơn. Tránh terminate chương trình đột ngột vì những lỗi runtime Tập các lớp Exception đa dạng, baou hàm các vấn đề phát sinh lúc runtime Lớp Exception là lớp cơ sở cho các lớpu xử lý ngoại lệ trong .NET Dễ dàng định nghĩa lớp ngoại lệ, vàu phát si ...
Tìm kiếm theo từ khóa liên quan:
code lập trình lập trình máy tính lập trình căn bản lập trình C++ ngôn ngữ lập Trình Môi Trường WindowsTài liệu liên quan:
-
Giáo trình Lập trình hướng đối tượng: Phần 2
154 trang 282 0 0 -
Kỹ thuật lập trình trên Visual Basic 2005
148 trang 279 0 0 -
Bài thuyết trình Ngôn ngữ lập trình: Hệ điều hành Window Mobile
30 trang 275 0 0 -
114 trang 252 2 0
-
Bài giảng Tin học lớp 11 bài 1: Giới thiệu ngôn ngữ lập trình C#
15 trang 247 0 0 -
Giáo trình Lập trình cơ bản với C++: Phần 1
77 trang 235 0 0 -
Bài giảng Một số hướng nghiên cứu và ứng dụng - Lê Thanh Hương
13 trang 231 0 0 -
80 trang 229 0 0
-
NGÂN HÀNG CÂU HỎI TRẮC NGHIỆM THIẾT KẾ WEB
8 trang 223 0 0 -
Giáo án Tin học lớp 11 (Trọn bộ cả năm)
125 trang 219 1 0