Thực hành OPP với Java Tuần 7

4 322 0
Thực hành OPP với Java  Tuần 7

Đang tải... (xem toàn văn)

Thông tin tài liệu

Tuần 7: LỚP TRỪU TƯỢNG - Tóm tắt kiến thức Thế lớp trừu tượng? • Là lớp có phương thức (ít một) khai báo mà không viết code Để dành code cụ thể thực lớp dẫn xuất • Khai báo lớp trừu tượng abstract class TênLớpCon { Khai báo Properties Khai báo phương thức (phải có phương thức trừu trượng) } • Phương thức trừu tượng phương thức cài đặt chi tiết abstract public/protected (các tham số); • Lớp kế thừa từ lờp trừu tượng phải viết code tường minh phương thức trừu tượng lớp cha, không lớp trừu tượng Bài tập Bài 1: Quản lý đối tượng học viện: • Nhân viên quản lý (mã nv, tên nv, trình độ, chuyên môn, lương bản, phụ cấp chức vụ) Lương = lương + phụ cấp chức vụ • Nhân viên nghiên cứu (mã nv, tên nv, trình độ, chuyên môn, lương bản, phụ cấp độc hại) Lương = lương + phụ cấp độc hại • Nhân viên phục vụ (mã nv, tên nv, trình độ, lương bản) Lương = lương Khái quát hóa lớp theo sơ đồ phân cấp kế thừa để xây dựng lớp trừu tượng lớp cụ thể Xây dựng lớp thử nghiệm chứa phương thức main(), khai báo đối tượng nhân viên, nhập liệu tính lương cho nhân viên TH LTHĐT Ths Văn Thị Thiên Trang Page Hướng dẫn Bài 1: Dựa đặc điểm chung lớp đối tượng, ta có sơ đồ lớp đối tượng với quan hệ kế thừa sau (khi làm bất kỳ, bạn phải tự xây dựng sơ đồ lớp này): NV - manv -tennv -trinhdo -luongcb + void Nhap() + void Xuat() + long TinhLuong() NVQL - chuyenmon - phucapcv NVNC - chuyenmon - phucapdh NVPV + void Nhap() + void Xuat() + long TinhLuong() + void Nhap() + void Xuat() + long TinhLuong() + void Nhap() + void Xuat() + long TinhLuong() Trong phương thức lớp NV, phương thức phương thức trừu tượng? Vì nhân viên nói chung, ta chưa biết cách tính lương nên phương thức tính lương phương thức trừu tượng, lớp NV lớp trừu tượng - Tùy thuộc vào loại nhân viên cụ thể mà có cách tính lương khác (code tường minh phương thức tính lương cho lớp con) Xây dựng lớp: - Lớp NV + Lớp NV lớp trừu tượng + Phương thức Nhap() dùng để nhập thuộc tính mã nv, tên nv… + Phương thức Xuat() dùng để xuất thuộc tính mã nv, tên nv… + Phương thức TinhLuong() pt trừu tượng nên khai báo mà không cài đặt chi tiết - TH LTHĐT Ths Văn Thị Thiên Trang Page - - Lớp NVQL + Lớp NVQL kế thừa từ lớp NV + Trong phương thức Nhap(), gọi phương thức nhập lớp cha nhập cho thuộc tính chuyên môn, phụ cấp chức vụ + Phương thức Xuat() gọi phương thức xuất lớp cha xuất thuộc tính chuyên môn, phụ cấp chức vụ + Phương thức TinhLuong(): viết code tường minh Lương = Lương + phụ cấp chức vụ Lớp NVNC + Tương tự lớp NVQL, Lương = Lương + phụ cấp độc hại Lớp NVPV + Lớp NVPV kế thừa lớp NV, đặc biệt thêm thuộc tính khác so với lớp NV nên không cần viết lại phương thức Nhap(), Xuat() + Chỉ viết lại phương thức TinhLuong(), viết code tường minh Lương = Lương Cài đặt lớp thử nghiệm Mở rộng Tương tự, làm sau: Viết chương trình minh họa thiết kế sau: Chương trình có giao diện sau: Nhập học viên Nhập nhân viên quản lý Nhập giáo viên Xuất thông tin học viên TH LTHĐT Ths Văn Thị Thiên Trang Page Xuất thông tin nhân viên quản lý Xuất thông tin giáo viên Lưu ý: có vận dụng kiến thức lớp bao gộp! TH LTHĐT Ths Văn Thị Thiên Trang Page

Ngày đăng: 15/09/2017, 13:19

Từ khóa liên quan

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

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

Tài liệu liên quan