Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 30 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
30
Dung lượng
149 KB
Nội dung
BÁO CÁO BÀI TẬP LỚN Môn Lập Trình Java Tên đề tài : - Tìm hiểu về cơ chế bắt lỗi (Exception Handling) trong Java - Tìm hiểu về lớp File và interface Serializable - Viết chương trình đọc và ghi tệp chứa các đối tượng Sinh viên có các thông tin về mã sinh viên, họ tên và ngày sinh. Nhóm sinh viên thực hiện : Nguyễn Thị Hồng Anh Nguyễn Thị Thu Hải Hoàng Thị Hoa Hoàng Thị Nga Nguyễn Thị Thu Quỳnh Nội dung báo cáo : I. Cơ chế bắt lỗi (Exception Handling) 1.Giới thiệu một lỗi (exception) 2.Mục đích của việc xử lý lỗi 3.Mô tả mô hình xử lý lỗi 4. Các khối ‘try’ và ‘catch’ 5. Khối “finally” 6. Các ngoại lệ được định nghĩa với lệnh ‘throw’ và ‘throws’ 7. Danh sách các ngoại lệ II. Lớp File 1.Giới thiệu lớp file 2.Một số phương thức trong lớp File 3.Thư mục 4.FilenameFiter 5.listFiles() III. Lớp Interface Serializable Nội dung chi tiết : I. Cơ chế bắt lỗi(Exception Handling 1. Giới thiệu một lỗi : Exception là một lỗi đặc biệt. Nó thường xuất hiện vào lúc thực thi chương trình. Các trạng thái không bình thường xảy ra trong khi thi hành chương trình tạo ra các Exception Những trạng thái này không được biết trước khi ta xây dựng chương trình. Ngôn ngữ Java cung cấp bộ máy xử lý lỗi rất tốt. Nó làm hạn chế tối đa trường hợp hệ thống bị phá vỡ hay ngắt đột ngột. Các lỗi trong một chương trình + Lỗi cú pháp :Người lập trình có thể phát hiện và sửa lỗi dựa vào trình biên dịch, đây là lỗi dễ phát hiện và sửa chữa. + Lỗi thuật toán : là lỗi khó phát hiện và sửa chữa nhất. + Lỗi thực thi : là một lỗi khách nhưng có thể kiểm soát được nhờ cơ chế bắt lỗi trong Java. 2. Mục đích của việc xử lý lỗi : Một chương trình nên có cơ chế xử lý lỗi thích hợp. Nếu không, chương trình sẽ ngắt khi hệ thống xảy ra lỗi. Trong trường hơp đó, tất cả các nguồn tài nguyên mà hệ thống trước kia phân phối sẽ được di dời trong cùng trạng thái. Điều này làm gây lãng phí nguồn tài nguyên. Để tránh trường hợp này, tất cả các nguồn tài nguyên mà hệ thống phân phối nên được thu hồi lại. Tiến trình này đòi hỏi cơ chế xử lý lỗi thích hợp. 3. Mô hình xử lý lỗi : Mô hình xử lý lỗi dựa trên 3 hoạt động chính - Đặc tả ngoại lệ: là khai báo cho trình biên dịch biết là phương thức này có thể gây ra ngoại lệ lúc thi hành. Để khai báo ta dùng từ khóa throws trong khai báo phương thức. - Loại bỏ một ngoại lệ: một phương thức sau khi đã khai báo thì có thể ném ra các đối tượng. - Bắt lỗi: mỗi khi lỗi xảy ra sẽ được phát hiện và đưa vào một khối để xử lý. Vấn đề của người lập trình là phải biết được đoạn mã nào có thể gây ra lỗi.Khi đã khoanh vùng được đoạn mã có thể gây ra lỗi họ sẽ đặt đoạn mã đó trong khối “try”, và đặt đoạn mã xử lý lỗi trong khối “catch”. Cấu trúc của mô hình xử lý ngoại lệ try } // Các lệnh có khả năng gây lỗi { catch ( TypeException1 ex) } // Mã đựơc thực thi khi một ngoại lệ TypeException1 đựơc phát sinh trong khối try { catch ( TypeException2 ex) } // Mã đựơc thực thi khi một ngoại lệ TypeException2 đựơc phát sinh trong khối try { catch ( TypeExceptionN ex) } // Mã đựơc thực thi khi một ngoại lệ TypeExceptionN đựơc phát sinh trong khối try { finally } // khối lệnh nay luôn được thực hiện cho dù ngoại lệ có xảy ra trong khối try hay ko { [...]... việc xử lý lỗi Khối try chứa một bộ các lệnh có thể thi hành được Các lỗi có thể bị chặn khi thi hành những câu lệnh này Phương thức dùng để chặn lỗi có thể được khai báo trong khối try Một hay nhiều khối catch có thể theo sau khối try Các khối catch này bắt các lỗi trong khối try Để bắt giữ bất cứ một lỗi nào, ta phải chỉ ra được + )kiểu lỗi là Exception : catch(Exception e Khi lỗi bị bắt giữ không... System.IO.Stream làm đối số, tuần tự hóa Object và ghi nó vào Stream TÀI LIỆU THAM KHẢO Bài giảng Lập trình Java (Ngô Công Thắng – 1 (Khoa CNTT – Trường ĐH Nông Nghiệp Hà Nội Một số nguồn tài liệu trên các địa 2 , chỉ:www.javavietnam.org www.diendantinhoc.org (Lập trình Java căn bản (Nguyễn Tấn Thành 3 Lập trình hướng đối tượng trong java (Hoàng 4 (Trọng Thế ... gọi một lần cho từng tập tin trong một danh sách :Dạng mở rộng của hàm này )Boolean accept(File drectory,Stringfilename Hàm accept() trả về true cho các tập tin + trong thư mục directory và có mặt trong danh sách ).(các tập tin tương xứng với filename Lớp OnlyExt thể hiện FilenameFilter Nó sẽ + dùng sửa đổi chương trình trước để giới hạn các tập tin trả về bởi list() với những tập tin có cùng phần... nhiều loại ngoại lệ Một phương thức đơn có thể chặn nhiều loại lỗi và để xử lý những lỗi này, ta cần cung cấp một danh sách các lỗi mà phương thức chặn trong phần định nghĩa của phương thức Public class Example : Danh sách các ngoại lệ 7 Lỗi Không trả lời RuntimeException Lớp cơ sở cho nhiều lỗi java. lang ArthmeticException Trạng thái lỗi về số, ví dụ như chia cho 0 IllegalAccessException Lớp không thiết... trả về các đối tượn File Hai hàm đầu tiên làm việc tương tự như các dạng hàm list() tương ứng Hàm thứ ba trả về các tập tin với đường dẫn thỏa mãn FileFilter xác định FileFilter chỉ định nghĩa hàm đơn giản accept(), hàm này gọi một :lần cho mỗi tập tin trong danh sách Dạng chung của nó như sau đây ) boolean accept(File path Hàm accept() trả về true với các tập tin chứa trong danh sách (đó gồm các tập. .. cha của thư mục đó có mặt trong đường dẫn của File :FilenameFilter 4 Khi bạn tạo đối tượng File và đặt nó là thư mục, + hàm isDirectory() trả về true Trong trường hợp đó, bạn có thể gọi list() để trích danh sách các file :và thư mục khác bên trong Hàm này có hai dạng String][ list()//Danh sách các tập tin trả về trong mảng các String )String][ list(FilenameFilter FFObj Trong dạng thứ hai, FFObj là... để bắt lỗi đó Chương trình minh họa cách sử dụng các khối ”“try” và “catch class TryClass } ][)public static void main(String args } ;int b=0 try } );System.out.println(20/b { )catch(ArithmeticException a } ”);System.out.println(“Khong the thuc hien phep chia cho 0 { { { Khi sử dụng các “try” lồng nhau, khối “try”bên + trong được thi hành đầu tiên Bất kỳ lỗi nào bị chặn trong khối “try” sẽ bị bắt. .. tên mở rộng :listFile 5 Java cung cấp một dạng biến thể của list() là listFiles() rất hữu ích + Các dạng của listFiles() trình bày sau đây ()File][ listFiles )File][ listFiles(FilenameFilter FFObj )File][ listFiles(FileFilter FObj Các phương thức trên trả về mảng các đối tượng File thay thế vì mảng chuỗi tên tập tin Hàm đầu tiên trả về tất cả các tập tin và hàm thứ hai trả về những file thỏa mãn FilenameFilter... ArrayIndexOutOfBoundsExeptio n Kích thước của mảng lớn hơn 0 hay lớn hơn kích thước thật của mảng NullPointerException Khi muốn truy cập tới đối tượng null SecurityException Việc thiết lập cơ chế bảo mật không được hoạt động ClassNotFoundException Không thể truy nạp lớp yêu cầu :II Lớp File Giới thiệu lớp file 1 Một số phương thức trong lớp File 2 Thư mục 3 FilenameFiter 4 ()ListFiles 5 :Giới thiệu về lớp File 1 Lớp File giao... sẽ bị bắt giữ trong khối “catch” theo sau Nếu khối catch thích hợp không được tìm thấy thì các khối “catch” của các khối “try” bên ngoài sẽ được xem xét Nếu không, Java Runtime Environment xử lý các lỗi Khi các khối try được sử dụng mà không có các + khối catch nào, chương trình sẽ biên dịch mà không gặp sự cố nào nhưng sẽ bị ngắt khi thực thi Bởi vì đã xảy ra lỗi khi thực thi chương trình ” :Khối . BÁO CÁO BÀI TẬP LỚN Môn Lập Trình Java Tên đề tài : - Tìm hiểu về cơ chế bắt lỗi (Exception Handling) trong Java - Tìm hiểu về lớp File và interface Serializable - Viết chương trình đọc. đây là lỗi dễ phát hiện và sửa chữa. + Lỗi thuật toán : là lỗi khó phát hiện và sửa chữa nhất. + Lỗi thực thi : là một lỗi khách nhưng có thể kiểm soát được nhờ cơ chế bắt lỗi trong Java. . lý lỗi rất tốt. Nó làm hạn chế tối đa trường hợp hệ thống bị phá vỡ hay ngắt đột ngột. Các lỗi trong một chương trình + Lỗi cú pháp :Người lập trình có thể phát hiện và sửa lỗi dựa vào trình