Mọi người cho e hỏi là nếu class ViewDetail cần gọi phương thức getBillByMonth() từ lớp BillDetail thì nó liên kết trực tiếp với lớp BillDetail hay liên kết tới lớp Bill vậy ạ. Em cảm ơn
Mọi người cho e hỏi là nếu class ViewDetail cần gọi phương thức getBillByMonth() từ lớp BillDetail thì nó liên kết trực tiếp với lớp BillDetail hay liên kết tới lớp Bill vậy ạ. Em cảm ơn
Về câu hỏi của cậu, do cậu chưa mô tả đầy đủ quan hệ giữa Bill
với ViewBillDetail
, nên:
Bill
là thuộc tính của ViewBillDetail
, cậu vẽ quan hệ kết tập giữa Bill
và ViewBillDetail
.Bill
chỉ được sử dụng bởi 1 method (cậu tạo instance của Bill
trong 1 method nào đó, chứ Bill
không phải thuộc tính), cậu vẽ quan hệ sử dụng giữa Bill
và ViewBillDetail
.Cơ mà:
BillDetail
lại kế thừa Bill
vậy? Về mặt ngữ nghĩa, BillDetail
nên là một thành phần của Bill
, chứ không phải kế thừa.getBillIdByDay
lại không có trên Bill
? Vì nếu sub class có method không được định nghĩa ở super class, hẳn nhiên thiết kế vi phạm Liskov substitution principle rồi
Xin lỗi mn, mk quên ko mô tả quan hệ giữa các lớp. Sơ qua là như thế này: người dùng nhấn vào tháng bất kì , hệ thống hiện ra danh sách hóa đơn của tháng đó. Thì để có dữ liệu hiển thị lên giao diện ViewBillDetail, lớp ViewBillDetail sẽ gọi lớp Bill ( hoặc BillDetail, cái này mk đang thắc mắc đây), sau đó thì lớp đó gọi phương thức getBillByDay() và trả kết quả về để hiển thị.