Giáo án bài giảng: Công nghệ thông tin về nền tảng lập trình C# kế thừa và đa hình

42 462 0
Giáo án bài giảng: Công nghệ thông tin về nền tảng lập trình C# kế thừa và đa hình

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

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC 1 HOCLAPTRINHWEB.COM TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC 2 HOCLAPTRINHWEB.COM Bài 5: Tính thừa kế Đa hình • Tính thừa kế (Inheritance) • Lớp trừu tượng (Abstract) • Lớp niêm phong (Sealed) • Tính đa hình của lớp (Polymorphism) - 8 tiết - TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC 3 HOCLAPTRINHWEB.COM Tính thừa kế (Inheritance) • Khái niệm • Xây dựng lớp kế thừa TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC 4 HOCLAPTRINHWEB.COM Khái niệm • Tính thừa kế là một khái niệm nền tảng cho phép tái sử dụng mã lệnh đang tồn tại điều này giúp tiết kiệm được thời gian trong việc lập trình • Các class có thể thừa kế từ class khác. Class mới được gọi là class được dẫn xuất (hay còn gọi là class con) sẽ được quyền truy xuất đến tất cả các thành viên dữ liệu các phương thức không được biểu thị private của class cơ sở (hay còn gọi là class cha) TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC 5 HOCLAPTRINHWEB.COM Xây dựng lớp kế thừa • Cú pháp: Tên_class_con : Tên_class_cơ_sở • Ví dụ 1:  Xét class cơ sở với khai báo như sau: TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC 6 HOCLAPTRINHWEB.COM Xây dựng lớp kế thừa • Ví dụ 1:  Xét class được dẫn xuất từ class cơ sở với khai báo như sau: TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC 7 HOCLAPTRINHWEB.COM Xây dựng lớp kế thừa • Ví dụ 1:  Kết quả xuất ra màn hình khi thực thi ví dụ trên: TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC 8 HOCLAPTRINHWEB.COM Xây dựng lớp kế thừa • Ví dụ 2:  Xét class cơ sở với khai báo như sau: TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC 9 HOCLAPTRINHWEB.COM Xây dựng lớp kế thừa • Ví dụ 2:  Xét hai class được dẫn xuất từ class cơ sở với khai báo như sau: TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC 10 HOCLAPTRINHWEB.COM Xây dựng lớp kế thừa • Ví dụ 2:  Đoạn lệnh khai báo khởi tạo đối tượng như sau: [...]...TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Xây dựng lớp kế thừa • Ví dụ 2:  Kết quả xuất ra màn hình khi thực thi đoạn lệnh trên: HOCLAPTRINHWEB.COM 11 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Lớp trừu tượng (Abstract) • • Khái niệm Xây dựng lớp trừu tượng HOCLAPTRINHWEB.COM 12 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Khái niệm • • • • class trừu tượng thực... KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Xây dựng lớp niêm phong • Ví dụ:  Kết quả xuất ra màn hình: HOCLAPTRINHWEB.COM 27 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Tính đa hình của lớp (Polymorphism) • • • Từ khóa base, this Ghi đè (overriding) Nạp chồng hàm (Overloading) HOCLAPTRINHWEB.COM 28 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Từ khóa base, this • Từ khóa... TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Xây dựng lớp trừu tượng • Ví dụ 2:  Xét đoạn lệnh khai báo gọi thực thi như sau: HOCLAPTRINHWEB.COM 19 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Xây dựng lớp trừu tượng • Ví dụ 2:  Kết quả xuất ra màn hình: HOCLAPTRINHWEB.COM 20 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Xây dựng lớp trừu tượng • Chú ý:   ... ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Xây dựng lớp trừu tượng HOCLAPTRINHWEB.COM 16 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Xây dựng lớp trừu tượng • Ví dụ 1:  Kết quả được xuất ra màn hình: HOCLAPTRINHWEB.COM 17 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Xây dựng lớp trừu tượng • Ví dụ 2:  Xét lớp trừu tượng lớp dẫn xuất được khai báo như sau: HOCLAPTRINHWEB.COM... trong lớp dẫn xuất (lớp con kế thừa) • Các điểm cần lưu ý khi thực hiện ghi đè:    Phương thức ở lớp cơ sở lớp dẫn xuất phải có cùng dạng hàm (signature) kiểu dữ liệu trả về Phương thức lớp cơ sở phải được khai báo với từ khóa virtual Phương thức lớp dẫn xuất phải được khai báo với từ khóa override HOCLAPTRINHWEB.COM 33 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Ghi đè (overriding)... trong lớp dẫn xuất (lớp con kế thừa) • Các điểm cần lưu ý khi thực hiện ghi đè:    Phương thức ở lớp cơ sở lớp dẫn xuất phải có cùng dạng hàm (signature) kiểu dữ liệu trả về Phương thức lớp cơ sở phải được khai báo với từ khóa virtual Phương thức lớp dẫn xuất phải được khai báo với từ khóa override HOCLAPTRINHWEB.COM 34 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Ghi đè (overriding)... đến lớp hiện hành (lớp chứa đoạn lệnh đang cài đặt) Ví dụ: xét lớp cơ sở nhan_vien với khai báo như sau: HOCLAPTRINHWEB.COM 31 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Tính đa hình của lớp (Polymorphism) • • • Từ khóa base, this Ghi đè (overriding) Nạp chồng hàm (Overloading) HOCLAPTRINHWEB.COM 32 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Ghi đè (overriding) • Khái niệm... trong C# được ngầm định sealed Do vậy, chúng không thể được thừa kế HOCLAPTRINHWEB.COM 24 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Xây dựng lớp niêm phong • Cú pháp: sealed class tên_class { // Các thành viên của class trừu tượng } • Ví dụ:  Xét class niêm phong được khai báo như sau: HOCLAPTRINHWEB.COM 25 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN. .. thức: phương thức trừu tượng phương thức cụ thể Một kiểu được dẫn xuất từ một lớp cơ sở trừu tượng thừa kế tất cả các thành viên kiểu cơ sở bao gồm sự thực thi mọi phương thức HOCLAPTRINHWEB.COM 13 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Khái niệm • Khi nào thì sử dụng class trừu tượng?   Nếu muốn tạo các class mà các class này sẽ chỉ là các class cơ sở, không muốn bất cứ ai tạo... (overriding) • Ví dụ: xét lớp cơ sở nhan_vien với khai báo: HOCLAPTRINHWEB.COM 35 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Ghi đè (overriding) • Ví dụ: xét lớp dẫn xuất với khai báo:  Với ví dụ trên, phương thức tinh_luong trong lớp dẫn xuất được ghi đè lên phương thức tinh_luong trong lớp cơ sở HOCLAPTRINHWEB.COM 36 . th c chất là class c sở (base class) mà c c class kh c có thể đư c dẫn xuất từ nó. • C c class không phải là class trừu tượng (non-abstract class) đư c gọi là lớp c thể (concrete class). tạo c c class mà c c class này sẽ chỉ là c c class c sở, và không muốn bất c ai tạo c c đối tượng c a c c kiểu class này.  Class trừu tượng thường đư c dùng để biểu thị rằng nó là class. đư c thời gian trong vi c lập trình • C c class c thể thừa kế từ class kh c. Class mới đư c gọi là class đư c dẫn xuất (hay c n gọi là class con) sẽ đư c quyền truy xuất đến tất c c c thành

Ngày đăng: 22/04/2014, 16:15

Từ khóa liên quan

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

Tài liệu liên quan