TAILIEUCHUNG - Bài giảng Lập trình hướng đối tượng: Chương 6 - Trần Minh Thái

Bài giảng Lập trình hướng đối tượng chương 6 giới thiệu về tính đa hình trong lập trình hướng đối tượng với những nội dung cơ bản như sau: Giới thiệu đa hình, phương thức ảo, lớp trừu tượng, và một số bài tập ví dụ. | Chương 6. Tính đa hình (Polymorphism) TRẦN MINH THÁI Email: minhthai@ Website: Cập nhật: 10 tháng 04 năm 2015 Nội dung Giới thiệu đa hình Phương thức ảo Lớp trừu tượng Bài tập ví dụ 2 Giới thiệu [1/6] Giả sử có 2 hàm double max(double d1, double d2); int max(int i1, int i2); Một thông điệp (lời gọi hàm) được hiểu theo các cách khác nhau tùy theo danh sách tham số của thông điệp Đa hình hàm đa năng hóa hàm Giới thiệu [2/6] Đa hình là hiện tượng các đối tượng thuộc các lớp khác nhau có khả năng hiểu cùng một thông điệp theo các cách khác nhau Cùng thông điệp “nhảy”, kangaroo và con cóc nhảy theo hai kiểu khác nhau: chúng cùng có hành vi “nhảy” nhưng các hành vi này có nội dung khác nhau Giới thiệu [3/6] Đa hình được cài đặt bởi cơ chế overriding Nếu một phương thức của lớp cơ sở được định nghĩa lại tại lớp dẫn xuất thì định nghĩa tại lớp cơ sở có thể bị “che” bởi định nghĩa tại lớp dẫn xuất. Với overriding, toàn bộ thông điệp (cả tên và tham số) là hoàn toàn giống nhau - điểm khác nhau là lớp đối tượng được nhận thông điệp. Giới thiệu [4/6] !!! Lời gọi đến một phương thức của một đối tượng trỏ /tham chiếu tới được xem như lời gọi đến phương thức chứ không phải tương ứng với đối tượng đang được trỏ /tham chiếu tới Kết nối tĩnh (static binding). Hàm thành viên gọi từ con trỏ đối tượng được xác định trước khi chương trình chạy class A { public: void Print() { coutPrint(); //A::Print() Giới thiệu [5/6] CCircle *pc = new CCircle(50, 30, "Blue",100); CMyPoint *pp = pc; pp -> Draw(); //draw point ??? Giới thiệu [6/6] Để gọi được phương thức với đối tượng đươc trỏ/tham chiếu tới Cần phải xác định được kiểu của đối tượng được xem xét tại thời điểm chương trình đang chạy (runtime) Kết nối động (dynamic binding) hoặc kết nối trễ (late binding) Xác định hàm thành viên nào tương ứng với một lời gọi hàm thành viên từ

TỪ KHÓA LIÊN QUAN
TAILIEUCHUNG - Chia sẻ tài liệu không giới hạn
Địa chỉ : 444 Hoang Hoa Tham, Hanoi, Viet Nam
Website : tailieuchung.com
Email : tailieuchung20@gmail.com
Tailieuchung.com là thư viện tài liệu trực tuyến, nơi chia sẽ trao đổi hàng triệu tài liệu như luận văn đồ án, sách, giáo trình, đề thi.
Chúng tôi không chịu trách nhiệm liên quan đến các vấn đề bản quyền nội dung tài liệu được thành viên tự nguyện đăng tải lên, nếu phát hiện thấy tài liệu xấu hoặc tài liệu có bản quyền xin hãy email cho chúng tôi.
Đã phát hiện trình chặn quảng cáo AdBlock
Trang web này phụ thuộc vào doanh thu từ số lần hiển thị quảng cáo để tồn tại. Vui lòng tắt trình chặn quảng cáo của bạn hoặc tạm dừng tính năng chặn quảng cáo cho trang web này.