Tài liệu Slide Java (P7) pptx

36 276 0
Tài liệu Slide Java (P7) pptx

Đ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

Xử lý ngoạilệ Xử lý ngoạilệ 2 NguyễnViệtHà Nội dung  Khái niệm về xử lý ngoại lệ (exception handling)  Ném và bắt ngoại lệ  Khai báo ngoại lệ  Ném lại ngoại lệ  Định nghĩa ngoại lệ mới  Xử lý ngoại lệ trong constructor Xử lý ngoạilệ 3 NguyễnViệtHà Tài liệu tham khảo  Thinking in Java, chapter 9  Java how to program, chapter 15 Xử lý ngoạilệ 4 NguyễnViệtHà Lỗi và ngoạilệ  Mọi đoạnchương trình đềutiềm ẩnkhả năng sinh lỗi  lỗichủ quan: do lập trình sai  lỗi khách quan: do dữ liệu, do trạng thái củahệ thống  Ngoạilệ: các trường hợphoạt động không bình thường  Xử lý ngoạilệ như thế nào  làm thế nào để có thể tiếptục (tái) thựchiện Xử lý ngoạilệ 5 NguyễnViệtHà Cách xử lý lỗi truyềnthống  Cài đặtmãxử lý tạinơi phát sinh ra lỗi  làm cho chương trình trở nên khó hiểu  không phải lúc nào cũng đầy đủ thông tin để xử lý  không nhất thiết phải xử lý  Truyềntrạng thái lên mứctrên  thông qua tham số, giá trị trả lạihoặc biến tổng thể (flag)  dễ nhầm  vẫncònkhóhiểu  Khó kiểmsoátđượchếtcáctrường hợp  lỗisố học, lỗi bộ nhớ,…  Lập trình viên thường quên không xử lý lỗi  bản chất con người  thiếu kinh nghiệm, cố tình bỏ qua Xử lý ngoạilệ 6 NguyễnViệtHà Ví dụ int devide(int num, int denom, int& error) { if (0 != denom) { error = 0; return num/denom; } else { error = 1; return 0; } } Xử lý ngoạilệ 7 NguyễnViệtHà Xử lý ngoạilệ (Exception handling) trong Java  Xử lý ngoạilệ trong Java đượckế thừatừ C++  Dựa trên cơ chế ném và bắtngoạilệ  ném ngoạilệ: dừng chương trình và chuyển điều khiểnlên mứctrên (nơi bắt ngoại lệ)  bắt ngoạilệ: xử lý vớingoạilệ  Ngoại lệ: là đối tượng mang thông tin về lỗi đã xảy ra  ngoại lệ được ném tự động  ngoại lệ được ném tường minh Xử lý ngoạilệ 8 NguyễnViệtHà Phả hệ ngoạilệ trong Java Xử lý ngoạilệ 9 NguyễnViệtHà Ưu điểmcủa ném bắt ngoạilệ  Dễ sử dụng  dàng chuyển điềukhiển đếnnơi có khả năng xử lý ngoạilệ  có thể ném nhiều loại ngoại lệ  Tách xử lý ngoạilệ khỏi thuật toán  tách mã xử lý  sử dụng cú pháp khác  Không bỏ sót ngoại lệ (ném tự động)  Làm chương trình dễđọchơn, an toàn hơn Xử lý ngoạilệ 10 NguyễnViệtHà Ném ngoạilệ (tường minh)  Ném ngoạilệ bằng câu lệnh throw if (0==denominator) { throw new Exception(); } else res = nominator / denominator; [...]... ngoại lệ 25 Ví dụ import java. io.*; public class Echo { public static void main(String[] args) throws IOException { InputStreamReader reader; BufferedReader bufReader; reader = new InputStreamReader(System.in); bufReader = new BufferedReader(reader); String s; while( null != (s = bufReader.readLine()) System.out.println(s); } } Nguyễn Việt Hà Xử lý ngoại lệ 26 Hai loại ngoại lệ Java phân biệt hai loại... } try { InputFile fin = new InputFile(”data.txt”); } catch (IOException e) { System.err.println(e.getMessage); } Nguyễn Việt Hà Xử lý ngoại lệ 35 Bài tập và thực hành Tìm hiểu về phả hệ ngoại lệ của Java Thực hành ném và bắt ngoại lệ khai báo phương thức ném ngoại lệ constructor ném ngoại lệ tự định nghĩa ngoại lệ Nguyễn Việt Hà Xử lý ngoại lệ 36 . lệ trong constructor Xử lý ngoạilệ 3 NguyễnViệtHà Tài liệu tham khảo  Thinking in Java, chapter 9  Java how to program, chapter 15 Xử lý ngoạilệ 4 NguyễnViệtHà Lỗi. ngoạilệ 7 NguyễnViệtHà Xử lý ngoạilệ (Exception handling) trong Java  Xử lý ngoạilệ trong Java đượckế thừatừ C++  Dựa trên cơ chế ném và bắtngoạilệ  ném

Ngày đăng: 25/01/2014, 11:20

Hình ảnh liên quan

chế đa hình - Tài liệu Slide Java (P7) pptx

ch.

ế đa hình Xem tại trang 19 của tài liệu.

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

  • Đang cập nhật ...

Tài liệu liên quan