Xây dựng giao diện

Một phần của tài liệu Lập trình hướng đối tượng với C docx (Trang 109 - 110)

Giao diện là ràng buộc, giao ước đảm bảo cho các lớp hay các cấu trúc sẽ thực hiện một điều gì đó. Khi một lớp thực thi một giao diện, thì lớp này báo cho các thành phần client biết rằng lớp này có hỗ trợ các phương thức, thuộc tính, sự kiện và các chỉ mục khai báo trong giao diện.

Một giao diện đưa ra một sự thay thế cho các lớp trừu tượng để tạo ra các sự ràng buộc giữa những lớp và các thành phần client của nó. Những ràng buộc này được khai báo bằng cách sử dụng từ khóa interface, từ khóa này khai báo một kiểu dữ liệu tham chiếu để đóng gói các ràng buộc.

Một giao diện:

Gần giống như lớp trừu tượng, chỉ có phần khai báo và không có phần triển khai

Chỉ chứa phương thức, thuộc tính, chỉ mục và sự kiện

Thành phần của Interface mặc định là public abstract (virtual)

Không chứa thành phần tĩnh

Có thể triển khai từ một giao diện khác

Một lớp có thể triển khai từ nhiều giao diện

Một lớp trừu tượng được dùng làm lớp cơ sở cho một họ các lớp dẫn xuất từ nó. Trong khi giao diện là sự trộn lẫn với các cây kế thừa khác.

Khi một lớp thực thi một giao diện, lớp này phải thực thi tất cả các phương thức của giao diện. Đây là một bắt buộc mà các lớp phải thực hiện.

Cú pháp để định nghĩa một giao diện như sau:

[thuộc tính] [Bổ sung truy cập] interface <tên giao diện> [: danh sách cơ sở]

<phần thân giao diện>

}

Phần thuộc tính chúng ta sẽ đề cập sau. Thành phần bổ sung truy cập bao gồm: public, private, protected, internal, và protected internal, ý nghĩa tương tự như các bổ sung truy cập của lớp.

Theo sau từ khóa interface là tên của giao diện. Thông thường tên của giao diện được bắt đầu với từ I hoa (điều này không bắt buộc nhưng việc đặt tên như vậy rất rõ ràng và dễ hiểu, tránh nhầm lẫn với các thành phần khác).

Danh sách cơ sở là danh sách các giao diện mà giao diện này mở rộng, Phần thân của giao diện chính là phần thực thi giao diện sẽ được trình bày bên dưới.

Giả sử chúng ta muốn tạo một giao diện nhằm mô tả những phương thức và thuộc tính của một lớp cần thiết để lưu trữ và truy cập từ một cơ sở dữ liệu hay các thành phần lưu trữ dữ liệu khác như là một tập tin. Chúng ta quyết định gọi giao diện này là IStorage.

Trong giao diện này chúng ta xác nhận hai phương thức: Read() và Write(), khai báo này sẽ được xuất hiện trong phần thân của giao diện như sau:

interface IHinh

{ Double ChuVi();

Double DienTich();

void InThongTin();

}

Mục đích của một giao diện là để định nghĩa những khả năng mà chúng ta muốn có trong một lớp.

Một phần của tài liệu Lập trình hướng đối tượng với C docx (Trang 109 - 110)

Tải bản đầy đủ (PDF)

(142 trang)