Bài giảng Lập trình hướng đối tượng: Chương 7 - Trường Đại học Ngoại ngữ - Tin học, TP.HCM
Số trang: 28
Loại file: pdf
Dung lượng: 1.34 MB
Lượt xem: 12
Lượt tải: 0
Xem trước 3 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Bài giảng Lập trình hướng đối tượng: Chương 7 Interface, cung cấp cho người đọc những kiến thức như: nterface – Khái niệm; Định nghĩa Interface; Hiện thực Interface; Hiện thực nhiều Interface và thừa kế;...Mời các bạn cùng tham khảo!
Nội dung trích xuất từ tài liệu:
Bài giảng Lập trình hướng đối tượng: Chương 7 - Trường Đại học Ngoại ngữ - Tin học, TP.HCM Click to edit Master subtitle style INTERFACE 1 NỘI DUNG Interface – Khái niệm Định nghĩa Interface Hiện thực Interface Hiện thực nhiều Interface và thừa kế Thực hành 2 INTERFACE – KHÁI NIỆM 3 Interface – Khái niệm Interface có thể xem là ranh giới (boundary) mà đối tượng thực chia sẻ với thế giới bên ngoài Nếu như Inheritance thể hiện mối quan hệ “is a” thì Interface thể hiện mối quan hệ “can do” Trong thế giới thực, ta có thể thấy Inferace xuất hiện ở nhiều nơi: ở Tivi, xe hơi, ... 4 Interface – Khái niệm Người dùng sử dụng Tivi thông qua thao tác các nút điều chỉnh (chỉnh âm lượng, chỉnh kênh ...) chứ không cần biết chính xác bên trong Tivi xử lý như thế nào các nút điều chỉnh 5 Interface – Khái niệm Người lái xe sử dụng vô lăng, bàn đạp chân gas, bàn đạp thắng, ... để điều khiển xe hơi của mình 6 Interface – Khái niệm Nhận xét: Inferface giúp định nghĩa cách thức người sử dụng giao tiếp với sự vật/hệ thống Xác định rõ làm thế nào hệ thống phản hồi (feedback) đến user Các sự vật có cùng interface thì thông thường chức năng chúng cung cấp sẽ tương tự nhau về mặt tổng quan (VD: Các loại xe hơi của những hãng sản xuất khác nhau) 7 ĐỊNH NGHĨA INTERFACE 8 Định nghĩa Interface Trong C#, ta có thể định nghĩa Interface thông qua từ khóa Interface Việc định nghĩa Interface cũng chính là viết bản hướng dẫn sử dụng một chức năng mà người dùng đang cần Trong C#, Interface bao gồm các thành viên cơ bản: thuộc tính (properties), phương thức (methods), sự kiện (events) và indexers 9 Định nghĩa Interface Ví dụ 1: Một chương trình Khoa học đời sống đang muốn nghiên cứu hành vi “bay” của các sự vật trên trái đất public interface IFlyable { void Fly(); } 10 Định nghĩa Interface Ví dụ 2: Giả sử chương trình cần hỗ trợ “ghi” file và hỗ trợ nhiều loại file khác nhau public interface IFileWriter { string Extension { get; } void Write(string filename); } 11 Định nghĩa Interface Nhận xét: Tất cả các phương thức (methods) ở trên đều không có phần hiện thực (implementation) Không cần từ khóa virtual trước tên phương thức Không cần phải khai báo tầm vực (vd: public, protected, private, ...) trước tên phương thức Mặc định tất cả members đều public/virtual Nên có từ khóa I trước tên Interface 12 HIỆN THỰC INTERFACE 13 Hiện thực Interface Nếu chỉ định nghĩa Interface thì ta vẫn chưa sử dụng được các chức năng mong muốn Cần xây dựng các lớp “hiện thực” interface để có thể sử dụng được các thành viên trong interface tương ứng (VD: Các thiết bị linh kiện và xử lý chi tiết bên trong Tivi ứng với từng nút) Cú pháp “hiện thực” interface tương tự như khi thừa kế dùng dấu hai chấm “:” + tên Interface Hiện thực chi tiết các thành viên của Interface 14 Hiện thực Interface Ví dụ 1: Một chương trình Khoa học đời sống đang muốn nghiên cứu hành vi “bay” của các sự vật trên trái đất cần xây dựng các lớp có đối tượng có thể thực hiện hành vi “bay” này public interface IFlyable { void Fly(); } 15 Hiện thực Interface 16 Hiện thực Interface class Bird : IFlyable { public void Fly() { Console.WriteLine('Bird Fly'); } } class Plane: IFlyable { public void Fly() { Console.WriteLine('Plane Fly'); } } 17 Hiện thực Interface class Program { static void Main(string[] args) { //Create 2 thing that can fly IFlyable[] FlyThings = new IFlyable[2]; FlyThings[0] = new Bird(); FlyThings[1] = new Plane(); for (int i = 0; i < FlyThings.Length; i++) FlyThings[i].Fly(); } } 18 Định nghĩa Interface Ví dụ 2: Giả sử chương trình cần hỗ trợ “ghi” file và hỗ trợ nhiều loại file khác nhau public interface IFileWriter { string Extension { get; } void Write(string filename); } 19 Hiện thực Interface class TextFileWriter : IFileWriter { public string Extension { get { return '.txt'; } } public void Write(string filename) { Console.WriteLine(filename); } } 20 ...
Nội dung trích xuất từ tài liệu:
Bài giảng Lập trình hướng đối tượng: Chương 7 - Trường Đại học Ngoại ngữ - Tin học, TP.HCM Click to edit Master subtitle style INTERFACE 1 NỘI DUNG Interface – Khái niệm Định nghĩa Interface Hiện thực Interface Hiện thực nhiều Interface và thừa kế Thực hành 2 INTERFACE – KHÁI NIỆM 3 Interface – Khái niệm Interface có thể xem là ranh giới (boundary) mà đối tượng thực chia sẻ với thế giới bên ngoài Nếu như Inheritance thể hiện mối quan hệ “is a” thì Interface thể hiện mối quan hệ “can do” Trong thế giới thực, ta có thể thấy Inferace xuất hiện ở nhiều nơi: ở Tivi, xe hơi, ... 4 Interface – Khái niệm Người dùng sử dụng Tivi thông qua thao tác các nút điều chỉnh (chỉnh âm lượng, chỉnh kênh ...) chứ không cần biết chính xác bên trong Tivi xử lý như thế nào các nút điều chỉnh 5 Interface – Khái niệm Người lái xe sử dụng vô lăng, bàn đạp chân gas, bàn đạp thắng, ... để điều khiển xe hơi của mình 6 Interface – Khái niệm Nhận xét: Inferface giúp định nghĩa cách thức người sử dụng giao tiếp với sự vật/hệ thống Xác định rõ làm thế nào hệ thống phản hồi (feedback) đến user Các sự vật có cùng interface thì thông thường chức năng chúng cung cấp sẽ tương tự nhau về mặt tổng quan (VD: Các loại xe hơi của những hãng sản xuất khác nhau) 7 ĐỊNH NGHĨA INTERFACE 8 Định nghĩa Interface Trong C#, ta có thể định nghĩa Interface thông qua từ khóa Interface Việc định nghĩa Interface cũng chính là viết bản hướng dẫn sử dụng một chức năng mà người dùng đang cần Trong C#, Interface bao gồm các thành viên cơ bản: thuộc tính (properties), phương thức (methods), sự kiện (events) và indexers 9 Định nghĩa Interface Ví dụ 1: Một chương trình Khoa học đời sống đang muốn nghiên cứu hành vi “bay” của các sự vật trên trái đất public interface IFlyable { void Fly(); } 10 Định nghĩa Interface Ví dụ 2: Giả sử chương trình cần hỗ trợ “ghi” file và hỗ trợ nhiều loại file khác nhau public interface IFileWriter { string Extension { get; } void Write(string filename); } 11 Định nghĩa Interface Nhận xét: Tất cả các phương thức (methods) ở trên đều không có phần hiện thực (implementation) Không cần từ khóa virtual trước tên phương thức Không cần phải khai báo tầm vực (vd: public, protected, private, ...) trước tên phương thức Mặc định tất cả members đều public/virtual Nên có từ khóa I trước tên Interface 12 HIỆN THỰC INTERFACE 13 Hiện thực Interface Nếu chỉ định nghĩa Interface thì ta vẫn chưa sử dụng được các chức năng mong muốn Cần xây dựng các lớp “hiện thực” interface để có thể sử dụng được các thành viên trong interface tương ứng (VD: Các thiết bị linh kiện và xử lý chi tiết bên trong Tivi ứng với từng nút) Cú pháp “hiện thực” interface tương tự như khi thừa kế dùng dấu hai chấm “:” + tên Interface Hiện thực chi tiết các thành viên của Interface 14 Hiện thực Interface Ví dụ 1: Một chương trình Khoa học đời sống đang muốn nghiên cứu hành vi “bay” của các sự vật trên trái đất cần xây dựng các lớp có đối tượng có thể thực hiện hành vi “bay” này public interface IFlyable { void Fly(); } 15 Hiện thực Interface 16 Hiện thực Interface class Bird : IFlyable { public void Fly() { Console.WriteLine('Bird Fly'); } } class Plane: IFlyable { public void Fly() { Console.WriteLine('Plane Fly'); } } 17 Hiện thực Interface class Program { static void Main(string[] args) { //Create 2 thing that can fly IFlyable[] FlyThings = new IFlyable[2]; FlyThings[0] = new Bird(); FlyThings[1] = new Plane(); for (int i = 0; i < FlyThings.Length; i++) FlyThings[i].Fly(); } } 18 Định nghĩa Interface Ví dụ 2: Giả sử chương trình cần hỗ trợ “ghi” file và hỗ trợ nhiều loại file khác nhau public interface IFileWriter { string Extension { get; } void Write(string filename); } 19 Hiện thực Interface class TextFileWriter : IFileWriter { public string Extension { get { return '.txt'; } } public void Write(string filename) { Console.WriteLine(filename); } } 20 ...
Tìm kiếm theo từ khóa liên quan:
Bài giảng Lập trình hướng đối tượng Lập trình hướng đối tượng Định nghĩa Interface Hiện thực Interface Thừa kế tối đa một lớp cơ sởGợi ý tài liệu liên quan:
-
Giáo trình Lập trình hướng đối tượng: Phần 2
154 trang 272 0 0 -
101 trang 199 1 0
-
14 trang 133 0 0
-
Giáo trình lập trình hướng đối tượng - Lê Thị Mỹ Hạnh ĐH Đà Nẵng
165 trang 112 0 0 -
Giáo trình Lập trình Windows 1 - Trường CĐN Đà Lạt
117 trang 96 0 0 -
Giáo trình Phân tích, thiết kế hướng đối tượng với UML: Phần 1 - Trường ĐH Công nghiệp Quảng Ninh
111 trang 95 0 0 -
265 trang 78 0 0
-
Giáo trình Lập trình hướng đối tượng với Java: Phần 2 - Trần Thị Minh Châu, Nguyễn Việt Hà
141 trang 75 0 0 -
33 trang 68 0 0
-
Ngôn ngữ lập trình C# 2005 - Tập 3: Lập trình hướng đối tượng (Phần 1)
196 trang 51 0 0