Tải bản đầy đủ (.pdf) (30 trang)

đồ án cá nhân môn học lập trình hướng đối tượng 2

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (994.16 KB, 30 trang )

<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">

<b>ĐẠI HỌC DUY TÂNTRƯỜNG KHOA HỌC MÁY TÍNH</b>

<b>KHOA KỸ THUẬT MẠNG MÁY TÍNH & TRUYỀN THƠNG</b>

<b>ĐỒ ÁN CÁ NHÂN MƠN HỌC: </b>

<b>LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG</b>

<b>GIẢNG VIÊN HƯỚNG DẪN : NGUYỄN MINH NHẬT</b>

</div><span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2">

<b>CHƯƠNG IGIỚI THIỆU BÀI TỐN</b>

<b>1.1. Giới thiệu bài tốn</b>

Các thí sinh dự thi đại học bao gồm các thí sinh thi khối A, B, và khối C. Các thí sinh cần quản lý các thông tin sau: Số báo danh, họ tên, địa chỉ, mức ưu tiên.

Thí sinh thi khối A thi các mơn: Tốn, Lý, Hố. Thí sinh thi khối B thi các mơn: Tốn, Hố, Sinh. Thí sinh thi khối C thi các môn: Văn, Sử, Địa.

Yêu cầu 1: Xây dựng các lớp để quản lý các thi sinh dự thi đại học. Yêu cầu 2: Xây dựng lớp TuyenSinh có các chức năng:

 Thêm mới thí sinh.

 Hiện thị thơng tin của thí sinh và khối thi của thí sinh.  Tìm kiếm theo số báo danh.

 Thốt khỏi chương trình. Hãy thực hiện:

 Thiết kế giao diện GUI để thực hiện được tất cả các chức năng nêu trên

 Thiết kế cơ sở dữ liệu phù hợp cho project. Dữ liệu đọc và lưu từ file hoặc từ Hệ Quản Trị CSDL như: MS. Access, SQL Server, MySQL v.v..

<b>1.2. Yêu cầu</b>

<b>Yêu cầu 1: Xây dựng các lớp để quản lý các thi sinh dự thi đại học.Yêu cầu 2: Xây dựng lớp TuyenSinh có các chức năng:</b>

 Thêm mới thí sinh.

 Hiện thị thơng tin của thí sinh và khối thi của thí sinh.  Tìm kiếm theo số báo danh.

 Thốt khỏi chương trình.

</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3">

 Xây dựng lớp TuyenSinh (quản lý tuyển sinh) với các phương thức: + Thêm mới thông tin của các hộ.

+ Xóa thơng tin của các hộ. + Chỉnh Sửa thơng tin của các hộ. + Thốt khỏi chương trình

</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="4">

 Cơng cụ phát triển: NetBean

 Môi trường vận hành: Thực hiện PC, Desktop với hệ điều hành Window .

<b>1.2.Thiết kế</b>

<b>1.2.1. Thiết kế cơ sở dữ liệu</b>

 Hệ thống lưu trữ: Microsoft SQL sever  Gồm các file có cấu trúc như sau:

</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6">

<b>1.2.2. Thiết kế giao diện</b>

<b>1.2.2.1.Giao diện Command Line</b>

<i>Hình 1. Giao diện chinh dạng Command Line</i>

1. Thêm mới thông tin của các hộ. 2. Xóa thơng tin của các hộ. 3. Chỉnh Sửa thông tin của các hộ. 4. Thốt khỏi chương trình Hãy chọn mục: _

</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7">

<i>Hình 2. Giao diện chinh dạng đồ hoạ</i>

</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8">

// Thuộc tính private String mon1; private String mon2; private String mon3; // Hàm khởi tạo không đối số public KhoiA() {

}

// Hàm khởi tạo có đối số

public KhoiA(String mon1, String mon2, String mon3) { super(); // Gọi hàm khởi tạo của lớp cha (ThiSinh)

</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9">

// Hàm hiển thị thông tin public void hienThongTin() {

super.hienThongTin(); // Gọi phương thức hienThongTin() của lớp cha để hiển thị thông tin chung

System.out.println("\tTo hop mon thi: " + mon1 + " - " + mon2 + " - " +

</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10">

package doan;

public class KhoiB extends KhoiA {

// Các thuộc tính và phương thức của lớp KhoiB

// Hàm khởi tạo có đối số

public KhoiB(String mon1, String mon2, String mon3) { super(mon1, mon2, mon3);

// Khởi tạo các thuộc tính của lớp KhoiB nếu có }

// Các phương thức khác của lớp KhoiB nếu có // ...

}

</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11">

<i>Hình 4. Hình code trong NeaBeans lớp KhachHang</i>

c. Lớp KhoiC

 Tên lớp: KhoiC.java package doan;

public class KhoiC extends KhoiA {

// Các thuộc tính và phương thức của lớp KhoiC // ...

// Hàm khởi tạo không đối số public KhoiC() {

super(); // Gọi hàm khởi tạo của lớp cha (KhoiA) // Khởi tạo các thuộc tính của lớp KhoiC nếu có }

// Hàm khởi tạo có đối số

public KhoiC(String mon1, String mon2, String mon3) {

super(mon1, mon2, mon3); // Gọi hàm khởi tạo có đối số của lớp cha (KhoiA)

</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12">

// Khởi tạo các thuộc tính của lớp KhoiC nếu có private int SoBD; private String HoTen;

</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">

private String DiaChi; private String DiemUuTien; // Hàm khởi tạo không đối số public ThiSinh() { }

// Hàm khởi tạo có đối số

public ThiSinh(int SoBD, String HoTen, String DiaChi, String public void nhapThongTin(Scanner sc) { System.out.print("\tNhap so bao danh: ");

</div><span class="text_page_counter">Trang 14</span><div class="page_container" data-page="14">

DiemUuTien = sc.nextLine(); }

// Phương thức hiển thị thông tin public void hienThongTin() {

System.out.println("\tSo bao danh: " + SoBD); System.out.println("\tHo ten: " + HoTen); System.out.println("\tDia chi: " + DiaChi);

System.out.println("\tDiem uu tien: " + DiemUuTien); }

// Phương thức lấy ra thông tin về số báo danh public int getSoBD() {

</div><span class="text_page_counter">Trang 15</span><div class="page_container" data-page="15">

public void nhapDanhSach(Scanner sc) {

System.out.println("Nhap vao so luong thi sinh: "); int n = sc.nextInt();

sc.nextLine();

for (int i = 0; i < n; i++) {

System.out.println("Chon khoi (1-KhoiA; 2-KhoiB; 3-KhoiC): "); int chon = sc.nextInt();

</div><span class="text_page_counter">Trang 16</span><div class="page_container" data-page="16">

System.out.println("Lua chon khong hop le. Them thi sinh voi thong tin co ban.");

public void hienThiDanhSach() { for (int i = 0; i < dsts.size(); i++) {

System.out.println("Thi sinh thu " + (i + 1) + " la:");

</div><span class="text_page_counter">Trang 18</span><div class="page_container" data-page="18">

<b>CHƯƠNG IIICÀI ĐẶT VÀ KIỂM THỬ</b>

<b>3.1. GIAO DIỆN CHÍNH</b>

<b>3.1.1. Giao diện Comman Line</b>

<b>3.1.1. Giao diện GUI</b>

</div><span class="text_page_counter">Trang 19</span><div class="page_container" data-page="19">

<b>3.2. Một số kết quả</b>

<b>3.2.1. Thêm mới khách hàng</b>

<b>3.2.1.1. Giao diện Comman Line</b>

</div><span class="text_page_counter">Trang 20</span><div class="page_container" data-page="20">

<b>3.2.1.2. Giao diện đồ hoạTrước khi thêm:</b>

<b>Sau khi thêm:</b>

</div><span class="text_page_counter">Trang 21</span><div class="page_container" data-page="21">

Bấm ok --> Kết quả đã được đưa lên danh sách

<b>3.2.2. Xóa khách hàng ra khỏi danh sách3.2.2.1. Giao diện Comman Line</b>

</div><span class="text_page_counter">Trang 22</span><div class="page_container" data-page="22">

<b>3.2.2.2. Giao diện đồ hoạ</b>

Trước khi xóa ta cần nhấp vào cột ta mốn xóa(VD: Lê Vĩnh C)

</div><span class="text_page_counter">Trang 23</span><div class="page_container" data-page="23">

Sau đó bấm nút xóa hiện thơng báo

Sau khi bấm ok nó sẽ cho ta thêm 1 cảnh báo ta có thực sự muốn xóa

</div><span class="text_page_counter">Trang 24</span><div class="page_container" data-page="24">

Nếu chúng ta bấm Yes sẽ cho ra kết quả như sau và theo đó cũng tính tổng tiền tiện theo yêu cầu cu:

<b>3.2.2. Chỉnh sửa khách hàng3.2.2.2. Giao diện đồ hoạ</b>

</div><span class="text_page_counter">Trang 27</span><div class="page_container" data-page="27">

<b>3.2.3. Tính tổng tiền điện của khách hàng3.2.3.2. Giao diện đồ hoạ</b>

<b>Khi ta bấm thêm tức là sẽ tính tổng vào của các hộ</b>

</div><span class="text_page_counter">Trang 28</span><div class="page_container" data-page="28">

<b>3.2.4. Thốt chương trình3.2.4.2. Giao diện đồ họa</b>

<b>Chương trình đã bị hủy và thốt ra</b>

</div><span class="text_page_counter">Trang 29</span><div class="page_container" data-page="29">

<b>KẾT LUẬN</b>

<b>1. Các vấn đề đạt được</b>

- Hiểu biết về các hệ thống Java - Các kỹ năng Java Core - Các công cụ dựng của Java - Làm việc nhóm

- Khả năng sáng tạo - Để ý các chi tiết

<b>2. Các vấn đề chưa đạt được</b>

<b>- Liên kết chức năng chưa bắt lỗi đầy đủ- Cơ sở dữ liệu còn sơ sài</b>

<b>- Giao diện đồ họa chưa hoàn thiện3. Hướng phát triển</b>

- Tiếp tục hồn thiện các chức năng cịn hạn chế

</div><span class="text_page_counter">Trang 30</span><div class="page_container" data-page="30">

<b>TÀI LIỆU THAM KHẢO</b>

</div>

×