(Tiểu luận) bài tập lớn môn lập trình hướng đối tượng đề số 26 quản lý thu học phí của trung tâm tin học ngoại ngữ

49 13 0
(Tiểu luận) bài tập lớn môn lập trình hướng đối tượng đề số 26 quản lý thu học phí của trung tâm tin học ngoại ngữ

Đ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

TRƯỜNG ĐẠI HỌC MỞ HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN - BÁO CÁO BÀI TẬP LỚN MƠN LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG Đề số 26: Quản lý thu học phí Trung tâm tin học ngoại ngữ Giảng viên hướng dẫn : ThS Nguyễn Thành Huy Sinh viên thực : Mai Tuyết Anh - 2210A01 Hà Thị Anh Thư - 2210A04 Phạm Thanh Tùng - 2210A04 Trần Minh Hiếu - 2210A06 PHÂN CÔNG VÀ KẾ HOẠCH THỰC HIỆN HỌ VÀ TÊN CÔNG VIỆC ĐÁNH GIÁ KẾT QUẢ GHI CHÚ Mai Tuyết Anh Phân tích, đưa hướng giải đề Kiểm tra, bổ sung chức cho lớp Kiểm thử liệu test, test chức Hoàn thành Hà Thị Anh Thư Bổ sung chức cho lớp Hoàn thiện word báo cáo BTL Hồn thành Phạm Thanh Tùng Xác định, mơ tả cài đặt lớp chương trình Test chức Hoàn thành Trần Minh Hiếu Xác định, mô tả cài đặt lớp chương trình Xác định sơ đồ lớp tốn Hồn thành I - PHÁT BIỂU BÀI TỐN: 1.Phát biểu toán: Trung tâm tin học ngoại ngữ ABC có mơn học Excel, PowerPoint, Word, IELTS,… môn học lại chia thành lớp tổ chức theo lịch học cụ thể tuần Mỗi lớp học theo lịch có mức học phí khác nhau, muốn tham gia khóa học trung tâm cần chọn lớp để đăng kí tốn trước học phí để trở thành học viên Xây dựng hệ thống để quản lý việc thu học phí trung tâm ABC gồm đối tượng quản lý sau: Người thu tiền: Thực thu học phí Học viên: Đăng kí lớp, nộp học phí tham gia khóa học Hóa đơn: Chứa thơng tin tốn học viên Lịch học: Theo ngày tuần Lớp: Mỗi lớp theo lịch lại có mức học phí khác 2.Xác định chức cần cài đặt: Nhập, Cập nhật: thêm, sửa, xóa Tính lương Đọc, ghi file II CÁC LỚP ĐỐI TƯỢNG CẦN QUẢN LÝ: LichHoc Thuộc tính: String thuHoc String buoiHoc Phương thức: +Constructor: hàm khởi tạo khơng tham số, có tham số +Setter, getter: phương thức set, get cho thuộc tính +toString(): Override phương thức toString Lop Thuộc tính: String maLop String monHoc double hocPhi LichHoc lich Phương thức: +Constructor +Setter, getter +nhapLop() +hienLop() +xemLichHoc() +toString() DsLop Thuộc tính: ArrayList dsLop Phương thức: +Setter, getter +nhapDsLop +hienDsLop +xoaLop(): xóa lớp theo mã lớp nhập từ bàn phím +luuFile() +docFile() Interface ILuong double luongCB = 1450 abstract double tienluong() Nguoi queQuan Thuộc tính: String hoTen String ngaySinh String gioiTinh String Phương thức: +Constructor +Setter, getter +nhap() +hien() NguoiThuTien extends Nguoi implements ILuong Thuộc tính: String maNTT double heSoluong Phương thức: +Constructor +Setter, getter +nhap() +tienluong()= luongCB*heSoLuong +hien() DsNguoiThuTien Thuộc tính: ArrayList dsNTT Phương thức: +nhapDsNTT() +hienDsNTT() + timkiemnguoitttheomntt(): tìm danh sách người thu tiền theo mã +suaThongTinNguoithutien(): sửa thông tin người thu tiền theo mã +xoaDsNTT(): xóa người thu tiền theo mã nhập từ bàn phím +luuFile() +docFile() HocVien extends Nguoi Thuộc tính: String maHv ArrayList DsLopDaDangKy HoaDon hoaDonHocPhi Phương thức: +Constructor +Setter, getter +nhap() +hien() +DKLopHoc(ArrayList dsl) +hienLopDaDangKy() +ganMaHoaDon() +xuatHoaDon() +LuuHoaDonVaoFile() DsHocVien Thuộc tính: ArrayList dsHocVien Phương thức: +nhapDsHocVien() +hienDsHocVien() +dangKyLopHoc(ArrayList dsLop): thực chức đăng ký lớp học +hienLopDaDangKy(): lớp học viên vừa đăng ký +xuatHoaDon() +timkiemhocvientheomhv() +suaThongTinHocVien() +XoaHocVien() +luuFile() +docFile() HoaDon Thuộc tính: String maHoaDon String thongTinHoaDon double tongTien Phương thức: +Constructor +Setter, getter +themVaoThongTinHoaDon(String thongTin) +congTienHoaDon(double tien) +toString() III SƠ ĐỒ LỚP CỦA BÀI TỐN: IV MƠ TẢ THUẬT TOÁN VÀ CÁC BƯỚC THỰC HIỆN: Khởi tạo đối tượng: Viết hàm khởi tạo khơng có tham số Viết hàm khởi tạo có tham số với biến đầu vào tương ứng với thuộc tính khai báo đối tượng - 2.Nhập danh sách đối tượng: Nhập số lượng phần tử cần thêm Thực gọi hàm thêm phần tử vào danh sách 3.Hiện danh sách đối tượng: Sử dụng vòng lặp for lặp từ phần tử đầu tới phần tử cuối danh sách, gọi phương thức đối tượng tương ứng - - 4.Ghi danh sách vào file: Implements giao diện Serializable đối tượng cần đọc Ghi danh sách vào file đối tượng tương ứng Nếu ghi thành công in thông báo “Ghi file thành công” 5.Đọc danh sách từ file: Đọc file lưu file vào danh sách đối tượng tương ứng In hình danh sách đối tượng tương ứng 6.Tìm kiếm theo mã: Nhập mã đối tượng cần tìm Dùng vịng lặp foreach câu lệnh so sánh equals, mã nhập vào trùng với liệu có đối tượng hình 7.Sửa thông tin: Nhập mã đối tượng cần sửa thơng tin Dùng vịng lặp for( duyệt theo số ) câu lệnh so sánh equals, mã nhập vào trùng với liệu có nhập lại thông tin cần sửa đối tượng Hiện lại danh sách đối tượng vừa sửa 8.Xóa theo mã: Nhập mã đối tượng cần xóa Dùng vịng lặp foreach câu lệnh so sánh equals, mã nhập vào trùng với liệu có gọi câu lệnh xóa remove Hiện lại danh sách đối tượng sau xóa V CÀI ĐẶT BÀI TỐN: 1.Class LichHoc package BaiTapLon; import java.io.Serializable; public class LichHoc implements Serializable{ private String thuHoc; private String buoiHoc; public LichHoc(String thuHoc, String buoiHoc) { this.thuHoc = thuHoc; this.buoiHoc = buoiHoc; } public LichHoc() { } public String getThuHoc() { return thuHoc; } public void setThuHoc(String thuHoc) { this.thuHoc = thuHoc; } public String getBuoiHoc() { return buoiHoc; } public void setBuoiHoc(String buoiHoc) { this.buoiHoc = buoiHoc; } @Override public String toString() { return this.buoiHoc+" thứ "+this.thuHoc; } 2.Class Lop package BaiTapLon; import java.io.Serializable; import java.util.Scanner; public class Lop implements Serializable{ private String maLop; private String monHoc; private double hocPhi; private LichHoc lich; public Lop() { this.lich = new LichHoc(); } public String getMaLop() { return maLop; } public void setMaLop(String maLop) { this.maLop = maLop; } public String getMonHoc() { return monHoc; } public void setMonHoc(String monHoc) { this.monHoc = monHoc; } public double getHocPhi() { return hocPhi; } public void setHocPhi(double hocPhi) { this.hocPhi = hocPhi; } public LichHoc getLich() { return lich; } public void setLich(LichHoc lich) { this.lich = lich; } public void nhapLop() { Scanner sc = new Scanner(System.in); System.out.print("Mã lớp: "); this.maLop = học: "); this.monHoc = System.out.print("Học phí: "); this.hocPhi sc.nextDouble(); sc.nextLine(); System.out.println("Lịch học "); System.out.print("Thứ: "); String thu = sc.nextLine(); this.lich.setThuHoc(thu); System.out.print("Buổi: "); String buoi = sc.nextLine(); this.lich.setBuoiHoc(buoi); } = sc.nextLine(); System.out.print("Môn sc.nextLine(); public void hienLop() { System.out.println("Mã lớp: "+this.maLop); System.out.println("Mơn học: "+this.monHoc); System.out.println("Học phí: "+this.hocPhi); System.out.println("Lịch học: "+this.lich.toString()); } public String xemLichHoc() { return this.lich.toString(); } public String toString() { return "\nMã lớp: "+this.maLop+", Môn học: "+this.monHoc+", Lịch học: "+this.lich.toString()+", Học phí: "+this.hocPhi; } } 3.Class DsLop package BaiTapLon; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.ObjectInputStream; import java.io.ObjectOutputStream; import java.util.ArrayList; import java.util.Scanner;

Ngày đăng: 28/09/2023, 20:27

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

Tài liệu liên quan