Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 20 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
20
Dung lượng
517 KB
Nội dung
Báo cáo bài tập nhóm Báo cáo bài tập nhóm Tìm hiểu một số vấn đề cơ bản trong Tìm hiểu một số vấn đề cơ bản trong hướng đối tượng: hướng đối tượng: Đóng gói dữ liệu, ẩn dấu thông tin, kế Đóng gói dữ liệu, ẩn dấu thông tin, kế thừa, đa hình thừa, đa hình 1. Đóng gói dữ liệu 1. Đóng gói dữ liệu • Tính chất này không cho phép người sử dụng 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 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 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 của đối tượng cho phép thay đổi trạng thái của nó. nó. • Việc cho phép môi trường bên ngoài tác động 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 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 cách nào là hoàn toàn tùy thuộc vào người viết mã mã 1. Đóng gói dữ liệu (contd) 1. Đóng gói dữ liệu (contd) • Đóng gói đảm bảo sự toàn vẹn của Đóng gói đảm bảo sự toàn vẹn của đối tượng. đối tượng. • Tính đóng gói cho phép dấu thông Tính đóng gói cho phép dấu thông tin của đối tượng bằng cách kết hợp tin 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 thông tin và các phương thức liên quan đến thông tin trong đối tượng. quan đến thông tin trong đối tượng. 1. Đóng gói dữ liệu (contd) 1. Đóng gói dữ liệu (contd) • Đóng gói dữ liệu luôn được tổ chức thành Đóng gói dữ liệu luôn được tổ chức thành các thuộc tính của lớp đối tượng. Việc 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 truy nhập dữ liệu phải thông qua các phương thức của đối tượng. phương thức của đối tượng. • Đóng gói dữ liệu để hạn chế sự truy nhập Đóng gói dữ liệu để hạn chế sự truy nhập tự do vào dữ liệu không quản lý được. tự do vào dữ liệu không quản lý được. 1. Đóng gói dữ liệu (contd) 1. Đóng gói dữ liệu (contd) • Việc đóng gói dữ liệu được thực hiện Việc đóng gói dữ liệu được thực hiện theo phương pháp trừu tượng hóa đối theo phương pháp trừu tượng hóa đối tượng thành lớp từ thấp lên cao như tượng thành lớp từ thấp lên cao như sau: sau: 1. Thu thập các thuộc tính của mỗi đối 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, gắn các thuộc tính vào đối tượng tương ứng. tượng tương ứng. 1. Đóng gói dữ liệu (contd) 1. Đóng gói dữ liệu (contd) 2.Nhóm các đối tượng có các thuộc tính tương 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ự 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 tính cá biệt chỉ giữ lại các thuộc tính chung nhất. nhất. 3. Đóng gói dữ liệu của các đối tượng vào lớp 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ở 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. thành một thuộc tính của lớp tương ứng. 1. Đóng gói dữ liệu (contd) 1. Đóng gói dữ liệu (contd) 4. Việc truy nhập dữ liệu được thực hiện thông 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. 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. 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, 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 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 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ử thay đổi mã nguồn của các chương trình sử dụng lớp trưu tượng. dụng lớp trưu tượng. 2. Ẩn dấu thông tin 2. Ẩn dấu thông tin • Tính chất này không cho phép người Tính chất này không cho phép người sử dụng các đối tượng thay đổ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 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 Chỉ có các phương thức nội tại của đối tượng cho phép thay đổi trạng đối tượng cho phép thay đổi trạng thái của nó. thái của nó. 2. Ẩn dấu thông tin (contd) 2. Ẩn dấu thông tin (contd) • Yêu cầu: Yêu cầu: _ Thiết kế mô-đun theo cách _ Thiết kế mô-đun theo cách mà các khả năng thay đổi được ẩn mà các khả năng thay đổi được ẩn _ Thay đổi không thể ảnh _ Thay đổi không thể ảnh hưởng đến các module khác hưởng đến các module khác • Ví dụ trong C + + Ví dụ trong C + + kiểu dữ liệu trừu kiểu dữ liệu trừu tượng được thực tượng được thực hiện với các thông hiện với các thông tin ẩn: tin ẩn: [...]... cho tất cả các đối tượng 4 Đa hình (contd) •Thể hiện thông qua việc gửi các thông điệp •Việc gửi các thông điệp này có thể so sánh như việc gọi các hàm bên trong của một đối tượng 4 Đa hình (contd) •Các phương thức dùng trả lời cho một 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 •Tính đa hình hỗ trợ tính đóng gói 4 Đa hình (contd) •Tính đa hình thể hiện... tượng khác đã có thông qua kế thừa 3 Thừa kế (contd) •Cho phép các đối tượng chia sẻ hay mở rộng các đặc tính sẵn có mà không phải tiến hành định nghĩa lại •Tuy nhiên, không phải ngôn ngữ định hướng đối tượng nào cũng có tính chất này 3 Thừa kế (contd) •Phân biệt hai loại quan hệ : _ Là – một : Biểu thị tính kế thừa Trong quan hệ “ là – một" , một đối tượng của lớp Con được xem như là một đối tượng của... như là một đối tượng của lớp Cha 3 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 4 Đ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... Thừa kế •Tính kế thừa là khả năng cho phép ta xây dựng một lớp mới dựa trên các định nghĩa của một lớp đã có •Lớp đã có gọi là lớp Cha, lớp mới phát 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 3 Thừa kế (contd) •Ta có thể mở rộng công năng các thành phần kế thừa cũng như bổ sung thêm các thành phần mới •Đặc tính này cho phép một đối tượng có thể có sẵn các đặc tính mà đối. .. lời cho một 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 •Tính đa hình hỗ trợ tính đóng gói 4 Đa hình (contd) •Tính đa hình thể hiện dưới nhiều hình thức : - Kết nối trễ - Late Binding -Nạp chồng – Overloading -Ghi chồng – Overriding . nhóm Tìm hiểu một số vấn đề cơ bản trong Tìm hiểu một số vấn đề cơ bản trong hướng đối tượng: hướng đối tượng: Đóng gói dữ liệu, ẩn dấu thông tin, kế Đóng gói dữ liệu, ẩn dấu thông tin, kế thừa,. mã mã 1. Đóng gói dữ liệu (contd) 1. Đóng gói dữ liệu (contd) • Đóng gói đảm bảo sự toàn vẹn của Đóng gói đảm bảo sự toàn vẹn của đối tượng. đối tượng. • Tính đóng gói cho phép dấu thông Tính đóng. đến thông tin trong đối tượng. quan đến thông tin trong đối tượng. 1. Đóng gói dữ liệu (contd) 1. Đóng gói dữ liệu (contd) • Đóng gói dữ liệu luôn được tổ chức thành Đóng gói dữ liệu luôn được