Bài giảng Lập trình hướng đối tượng: Chương 5 - GV. Hà Văn Sang

9 7 0
Bài giảng Lập trình hướng đối tượng: Chương 5 - GV. Hà Văn Sang

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

Thông tin tài liệu

Chương 5 Tính đa hình thuộc bài giảng lập trình hướng đối tượng, cùng nắm kiến thức trong chương này thông qua việc tìm hiểu một số nội dung chính sau: khái niệm, phương thức ảo, phương thức ảo thuần tuý.

Lập trình hướng đối tượng Lập trình hướng đối tượng Hà Văn Sang Hà Văn Sang Bộ môn: Tin học TC – KT Khoa HTTT, Khoa: Hệ Thống Thông Tin Kinh tế - Học Viện Tài Chính Tel: 0982.165.568Academy Of Finance, Hanoi Email: sanghv@hvtc.edu.vn Website: http://www.hvtc.edu.vn/sanghv 7/3/2014 8:41 AM Lập trình hướng đối tượng CHƯƠNG V Hà Văn Sang Khoa HTTT, Academy Of Finance, Hanoi 7/3/2014 8:41 AM Khái niệm Kết gán sớm kết gán muộn Khi đối tượng nhận thông báo thực phương thức, hệ thống sẽ:  Kiểm tra cú pháp thông báo Gắn thơng báo với định nghĩa hàm cụ thể Việc kết gán xảy hai thời điểm: •Lúc biên dịch chương trình  Kết gán sớm •Lúc chạy chương trình  Kết gán muộn Object Oriented Programing– Information Systems Department Phương thức ảo    Định nghĩa:  Hàm ảo hàm thành phần lớp  Được khai báo lớp sở định nghĩa lại lớp dẫn xuất Cú pháp virtual ([tsố]) Một số ý:  Định nghĩa phương thức áo phương thức thông thường  Sử dụng trỏ để truy cập tới hàm ảo  Định nghĩa lớp sở khơng sử dụng  Khơng có hàm khởi tạo ảo có hàm huỷ ảo  Con trỏ lớp sở chứa địa đối tượng lớp dẫn xuất Object Oriented Programing– Information Systems Department Phương thức ảo  Cơ chế kết gán muộn:      Quá trình phát sinh đối tượng lớp dẫn xuất:    Khi lớp có phương thức ảo lớp sở có phương thức áo Chương trình dịch phát sinh thêm trỏ ảo (virtual pointer) Con trỏ trỏ tới bảng ảo (Vtable) Bảng ảo có chứa địa phương thức ảo B1: xác định thành phần ( ko ảo) kể cả thành phần lóp sở Bước 2: Xây dựng trỏ ảo bảng áo Khi kết gán muộn, vào trỏ ảo để xác định phương thức bảng ảo phương thức lớp dẫn xuất Object Oriented Programing– Information Systems Department Ví dụ: Xây dựng lớp giáo viên sinh viên kế thừa từ lớp người NGUOI { - ht,namsinh - nhap, in - loai(){returrn 0}; } SV:NGUOI { -lop,dtb -nhap, in -loai(){ return 1;} } GV:NGUOI { -hsl, dv -nhap,in -loai(){return 2;} }  Object Oriented Programing– Information Systems Department Chú ý:  Cơ chế kết gán phương thức ảo thực qua phép gán trỏ tham chiếu NGUOI a,*p; GV b; a=b; a.nhap(); //kết gán sớm p=&b; pnhap(); //kết gán muộn NGUOI &q=b; qnhap(); //kết gán muộn void f(NGUOI x) { x.nhap(); //kết gán sớm} void f(NGUOI &x) { x.nhap(); //kết gán muộn } Object Oriented Programing– Information Systems Department Phương thức ảo tuý  Mục đích:     Tránh lãng phí nhớ Cung cấp phương thức thống làm giao diện chung Khai báo: virtual ([tsố])=0; Đặc điểm:     Không bắt buộc định nghĩa lớp sở Không thể khai báo đối tượng thuộc lớp có phương thức ảo tuý Lớp có phương thức ảo tuý làm lớp sở cho lớp khác gọi lớp sở trừu tượng Lớp dẫn xuất kế thừa lớp sở trừu tượng mà không định nghĩa lại phương thức ảo tuý  trở thành lớp sở trừu tượng Object Oriented Programing– Information Systems Department Qui cách nộp Gửi tới địa chỉ: sanghv@gmail.com CC: sanghv@hvtc.edu.vn Tiêu đề: [Lớp][BT6][Stt][Họ tên] Ví dụ: [K43/41.01][BT3][14][Lê hoàng Vũ] Hạn nộp: 23h59’ ngày 29/01/2008 Object Oriented Programing– Information Systems Department .. .Lập trình hướng đối tượng CHƯƠNG V Hà Văn Sang Khoa HTTT, Academy Of Finance, Hanoi 7/3/2014 8:41 AM Khái niệm Kết gán sớm kết gán muộn Khi đối tượng nhận thông báo... viên kế thừa từ lớp người NGUOI { - ht,namsinh - nhap, in - loai(){returrn 0}; } SV:NGUOI { -lop,dtb -nhap, in -loai(){ return 1;} } GV:NGUOI { -hsl, dv -nhap,in -loai(){return 2;} }  Object Oriented... pháp thơng báo Gắn thơng báo với định nghĩa hàm cụ thể Việc kết gán xảy hai thời điểm: •Lúc biên dịch chương trình  Kết gán sớm •Lúc chạy chương trình  Kết gán muộn Object Oriented Programing–

Ngày đăng: 11/05/2021, 04:14

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

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

Tài liệu liên quan