Báo cáo bài tập nhómTìm hiểu một số vấn đề cơ bản trong hướng đối tượng: Đóng gói dữ liệu, ẩn dấu thông tin, kế thừa, đa hình... Đóng gói dữ liệu• Tính chất này không cho phép người sử
Trang 1Báo cáo bài tập nhóm
Tìm hiểu một số vấn đề cơ bản trong
hướng đối tượng:
Đóng gói dữ liệu, ẩn dấu thông tin, kế
thừa, đa hình
Trang 21 Đóng gói dữ liệu
• Tính chất này không cho phép người sử dụng
các đối tượng thay đổi trạng thái nội tại của một đối tượng Chỉ có các phương thức nội tại của
đối tượng cho phép thay đổi trạng thái của nó
• Việc cho phép môi trường bên ngoài tác động lên các dữ liệu nội tại của một đối tượng theo
cách nào là hoàn toàn tùy thuộc vào người viết mã
Trang 31 Đóng gói dữ liệu (contd)
tượng
của đối tượng bằng cách kết hợp thông tin
và các phương thức liên quan đến thông tin trong đối tượng
Trang 41 Đóng gói dữ liệu (contd)
các thuộc tính của lớp đối tượng Việc truy nhập dữ liệu phải thông qua các phương thức của đối tượng
tự do vào dữ liệu không quản lý được
Trang 51 Đóng gói dữ liệu (contd)
phương pháp trừu tượng hóa đối tượng thành lớp từ thấp lên cao như sau:
1 Thu thập các thuộc tính của mỗi đối
tượng, gắn các thuộc tính vào đối tượng tương ứng
Trang 61 Đóng gói dữ liệu (contd)
2.Nhóm các đối tượng có các thuộc tính tương tự nhau thành nhóm, loại bỏ bớt các thuộc tính cá biệt chỉ giữ lại các thuộc tính chung nhất.
3 Đóng gói dữ liệu của các đối tượng vào lớp
tương ứng Mỗi thuộc tính của đối tượng trở
thành một thuộc tính của lớp tương ứng.
Trang 71 Đóng gói dữ liệu (contd)
4 Việc truy nhập dữ liệu được thực hiện thông
qua các phương thức được trang bị cho lớp
Không được truy nhập trực tiếp đến dữ liệu.
5 Khi có thay đổi trong dữ liệu của đối tượng, ta chỉ cần thay đổi các phương thức truy nhập
thuộc tính của lớp mà không cần phải thay đổi
mã nguồn của các chương trình sử dụng lớp
trưu tượng.
Trang 82 Ẩn dấu thông tin
dụng các đối tượng thay đổi trạng thái nội tại của một đối tượng
tượng cho phép thay đổi trạng thái của
nó
Trang 92 Ẩn dấu thông tin (contd)
_ Thiết kế mô-đun theo cách mà các khả năng thay đổi được ẩn
_ Thay đổi không thể ảnh hưởng đến các module khác
Trang 10• Ví dụ trong C + +
kiểu dữ liệu trừu
tượng được thực hiện với các thông tin ẩn:
Trang 113 Thừa kế
dựng một lớp mới dựa trên các định nghĩa của một lớp đã có
sinh gọi là lớp Con và đương nhiên kế
thừa tất cả các thành phần của lớp Cha
Trang 123 Thừa kế (contd)
phần kế thừa cũng như bổ sung thêm các thành phần mới
thể có sẵn các đặc tính mà đối tượng khác
đã có thông qua kế thừa
Trang 133 Thừa kế (contd)
rộng các đặc tính sẵn có mà không phải tiến hành định nghĩa lại
hướng đối tượng nào cũng có tính chất này
Trang 143 Thừa kế (contd)
_ Là – một :
“ là – một", một đối tượng của lớp Con
được xem như là một đối tượng của lớp Cha
Trang 153 Thừa kế (contd)
_ Có – một:
Quan hệ này mang ý nghĩa gồm có Trong quan hệ "có – một", một đối tượng có thể
có một hoặc nhiều thành phần tham chiếu đến các đối tượng khác
Trang 164 Đa hình
• Là tính chất thể hiện nhiều hình thái của đối
tượng
• Các đối tượng khác nhau có thể có cùng
phương thức thực thi cùng một hành động
Nhưng mỗi đối tượng lại thực thi hành động
theo cách riêng của mình, mà không giống nhau cho tất cả các đối tượng.
Trang 174 Đa hình (contd)
điệp
sánh như việc gọi các hàm bên trong của một đối tượng
Trang 184 Đa hình (contd)
thông điệp sẽ tùy theo đối tượng mà thông điệp đó được gửi tới sẽ có phản ứng khác nhau
Trang 194 Đa hình (contd)
thức :
- Kết nối trễ - Late Binding
-Nạp chồng – Overloading
-Ghi chồng – Overriding