Nội dung trình bày
Phương thức trừu tượng
Lớp cơ sở trừu tượng(Abstract base class)
Interface(giao diện)
Multiple Interface
Explicit Interface
Interface Inheritance
Tại sao lại dùng interface
So sánh abstract base class và Interface
12 trang |
Chia sẻ: NamTDH | Lượt xem: 1380 | Lượt tải: 0
Nội dung tài liệu Lớp trừu tượng và giao diện, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Bài 7 Lớp trừu tượng và giao diện Ôn tập lại bài cũ Lớp và đối tượng Constructor và Destructor Garbage Collector Phương thức(Method) Chồng phương thức(Method Overloading) Chông toán tử(Operator Overloading) Access modifier (phạm vi truy xuất) Từ khóa ref và out Subject name / Session# / * of Totalpage Nội dung trình bày Phương thức trừu tượng Lớp cơ sở trừu tượng(Abstract base class) Interface(giao diện) Multiple Interface Explicit Interface Interface Inheritance Tại sao lại dùng interface So sánh abstract base class và Interface Lớp trừu tượng và giao diện Phương thức trừu tượng Là phương thức mà không có phần cài đặt(chỉ có phần khai báo nguyên mẫu mà không có phần thân) Cú pháp để khai báo: đặt từ kháo abstract trước phần khai báo phương thức(không viết thân phương thức) Ví dụ: // chú ý là không có phần thân phương thức public abstract void someMethod(); Lớp trừu tượng Lớp trừu tượng là lớp gồm 1 hoặc nhiều phương thức trừu tượng Không thể khởi tạo đối tượng cho lớp trừu tượng // Ví dụ câu lệnh sau sẽ có lỗi MyAbstractClass a1 = new MyAbstractClass(); Một lớp khác sẽ cài đặt các phương thức trong lớp trừu tượng Ví dụ DEMO lớp trừu tượng Lớp trừu tượng và giao diện Khi nào thì sử dụng phương thức trừu tượng và lớp trừu tượng? Khi hai hoặc nhiều lớp muốn cài đặt các phương thức cùng tên nhưng mỗi phương thức trong một lớp lại thực hiện các công việc khác nhau(tính đa hình). Các lớp này sẽ kế thừa và cài đặt các phương thức trong lớp cơ sở Trong lập trình hướng đối tượng, lớp trừu tượng thường được đặt ở mức đỉnh trong sơ đồ cây phân cấp các lớp kề thừa Lớp trừu tượng và giao diện Interface là gì? Là lớp trừu tượng hoàn toàn có nghĩa là chỉ chứa các abstract method Không thể khởi tạo đối tượng cho Interface Một interface có thể nằm trong một namspace, nằm trong một class(nếu nằm trong class thì phải đặt là public) Trong interface chỉ gồm các thành phần: Abstract method Properties Indexers Event Lớp trừu tượng và giao diện Cú pháp khai báo: Chú ý nếu interface đặt trong một lớp thì phải đặt từ khóa public trước interface Lớp trừu tượng và giao diện interface IFile { int delFile(); void disFile(); } Cài đặt interface Interface được cài đặt bởi lớp Một lời cài đặt interface thì phải cài đặt tất cả các phương thức trong lớp đó Cú pháp: Ví dụ DEMO Lớp trừu tượng và giao diện Multiple Interface Ngôn ngữ C# cho phép một lớp cài đặt nhiều Interface Explicit Interface Khi 1 lớp mà cài đặt interface có 2 phương thức giống nhau thì phải chỉ ra tên interface chưa phương thức cần cài đặt. Interface Inherintace: Một interface có thể kế thừa nhiều Interface Ví dụ DEMO về Multiple interface và Explicit Interface Lớp trừu tượng và giao diện Tại sao lại dùng interface Có được các lớp không có quan hệ với nhau cùng cài đặt các phương thức giống nhau Sử dụng đa kế thừa Che dấu thông tin(encapsulation) Lớp trừu tượng và giao diện So sánh Abstract base class và Interface Tất cả các phương thức trong interface là abstract method, trong khi đó phương thức trong abstract base class là abstract method Trong lớp Abstract base class có thể chứa các fields, constructor, destructor, trong khi đó interface thì không Không thể tạo đối tượng(Instantiating object) của Abstract class và Interface Lớp trừu tượng và giao diện Tổng kết Phương thức trừu tượng Lớp cơ sở trừu tượng(Abstract base class) Interface(giao diện) Multiple Interface Explicit Interface Interface Inheritance Tại sao lại dùng interface So sánh abstract base class và Interface Lớp trừu tượng và giao diện
Các file đính kèm theo tài liệu này:
- bai_07_2176.ppt