![Phân tích tư tưởng của nhân dân qua đoạn thơ: Những người vợ nhớ chồng… Những cuộc đời đã hóa sông núi ta trong Đất nước của Nguyễn Khoa Điềm](https://timtailieu.net/upload/document/136415/phan-tich-tu-tuong-cua-nhan-dan-qua-doan-tho-039-039-nhung-nguoi-vo-nho-chong-nhung-cuoc-doi-da-hoa-song-nui-ta-039-039-trong-dat-nuoc-cua-nguyen-khoa-136415.jpg)
Giáo trình hướng dẫn truy cập phương thức gán đối tượng cho một giao diện đối lập trừu tượng p2
Số trang: 5
Loại file: pdf
Dung lượng: 866.29 KB
Lượt xem: 8
Lượt tải: 0
Xem trước 2 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Bây giờ trách nhiệm của chúng ta, với vai trò là người xây dựng lớp Document phải cung cấp một thực thi có ý nghĩa thực sự cho những phương thức của giao diện IStorable. Chúng ta phải thực thi tất cả các phương thức của giao diện, nếu không trình biên dịch sẽ báo một lỗi. Sau đây là đoạn chương trình minh họa việc xây dựng lớp Document thực
Nội dung trích xuất từ tài liệu:
Giáo trình hướng dẫn truy cập phương thức gán đối tượng cho một giao diện đối lập trừu tượng p2 Ngôn Ngữ Lập Trình C# public class Document : IStorable { public void Read() { .... } public void Write() { .... } } Bây giờ trách nhiệm của chúng ta, với vai trò là người xây dựng lớp Document phảicung cấp một thực thi có ý nghĩa thực sự cho những phương thức của giao diện IStorable.Chúng ta phải thực thi tất cả các phương thức của giao diện, nếu không trình biên dịch sẽ báomột lỗi. Sau đây là đoạn chương trình minh họa việc xây dựng lớp Document thực thi giaodiện IStorable. Ví dụ 8.1: Sử dụng một giao diện.-----------------------------------------------------------------------------using System;// khai báo giao diệninterface IStorable{ // giao diện không khai báo bổ sung truy cập // phương thức là public và không thực thi void Read(); void Write(object obj); int Status { get; set; }}// tạo một lớp thực thi giao diện IStorablepublic class Document : IStorable{ public Document( string s) { Console.WriteLine(“Creating document with: {0}”, s); 178 Thực Thi Giao Diện Ngôn Ngữ Lập Trình C# } // thực thi phương thức Read() public void Read() { Console.WriteLine(“Implement the Read Method for IStorable”); } // thực thi phương thức Write public void Write( object o) { Console.WriteLine(“Impleting the Write Method for IStorable”); } // thực thi thuộc tính public int Status { get { return status; } set { status = value; } } // lưu trữ giá trị thuộc tính private int status = 0;}public class Tester{ static void Main() { // truy cập phương thức trong đối tượng Document Document doc = new Document(“Test Document”); doc.Status = -1; doc.Read(); Console.WriteLine(“Document Status: {0}”, doc.Status); // gán cho một giao diện và sử dụng giao diện IStorable isDoc = (IStorable) doc; isDoc.Status = 0; 179 Thực Thi Giao Diện Ngôn Ngữ Lập Trình C# isDoc.Read(); Console.WriteLine(“IStorable Status: {0}”, isDoc.Status); }}----------------------------------------------------------------------------- Kết quả:Creating document with: Test DocumentImplementing the Read Method for IStorableDocument Status: -1Implementing the Read Method for IStorableIStorable Status: 0-----------------------------------------------------------------------------Ví dụ 8.1 định nghĩa một giao diện IStorable với hai phương thức Read(), Write() và mộtthuộc tính tên là Status có kiểu là số nguyên.. Lưu ý rằng trong phần khai báo thuộc tínhkhông có phần thực thi cho get() và set() mà chỉ đơn giản là khai báo có hành vi là get() vàset(): int Status { get; set;}Ngoài ra phần định nghĩa các phương thức của giao diện không có phần bổ sung truy cập (vídụ như: public, protected, internal, private). Việc cung cấp các bổ sung truy cập sẽ tạo ramột lỗi. Những phương thức của giao diện được ngầm định là public vì giao diện là nhữngràng buộc được sử dụng bởi những lớp khác. Chúng ta không thể tạo một thể hiện của giaodiện, thay vào đó chúng ta sẽ tạo thể hiện của lớp có thực thi giao diện.Một lớp thực thi giao diện phải đáp ứng đầy đủ và chính xác các ràng buộc đã khai báo tronggiao diện. Lớp Document phải cung cấp cả hai phương thức Read() và Write() cùng vớithuộc tính Status. Tuy nhiên cách thực hiện những yêu cầu này hoàn toàn phụ thuộc vào lớpDocument. Mặc dù IStorage chỉ ra rằng lớp Document phải có một thuộc tính là Statusnhưng nó không biết hay cũng không quan tâm đến việc lớp Document lưu trữ trạng thái thậtsự của các biến thành viên, hay việc tìm kiếm trong cơ sở dữ liệu. Những chi tiết này phụthuộc vào phần thực thi của lớp.Thực thi nhiều giao diệnTrong ngôn ngữ C# cho phép chúng ta thực thi nhiều hơn một giao diện. Ví dụ, nếu lớpDocument có thể được lưu trữ và dữ liệu cũng được nén. Chúng ta có thể chọn thực thi cả haigiao diện IStorable và ICompressible. Như vậy chúng ta phải thay đổi phần khai báo trongdanh sách cơ sở để chỉ ra rằng cả hai giao diện điều được thực thi, sử dụng dấu phẩy (,) đểphân cách giữa hai giao diện: public class Document : IStorable, ICompressible ...
Nội dung trích xuất từ tài liệu:
Giáo trình hướng dẫn truy cập phương thức gán đối tượng cho một giao diện đối lập trừu tượng p2 Ngôn Ngữ Lập Trình C# public class Document : IStorable { public void Read() { .... } public void Write() { .... } } Bây giờ trách nhiệm của chúng ta, với vai trò là người xây dựng lớp Document phảicung cấp một thực thi có ý nghĩa thực sự cho những phương thức của giao diện IStorable.Chúng ta phải thực thi tất cả các phương thức của giao diện, nếu không trình biên dịch sẽ báomột lỗi. Sau đây là đoạn chương trình minh họa việc xây dựng lớp Document thực thi giaodiện IStorable. Ví dụ 8.1: Sử dụng một giao diện.-----------------------------------------------------------------------------using System;// khai báo giao diệninterface IStorable{ // giao diện không khai báo bổ sung truy cập // phương thức là public và không thực thi void Read(); void Write(object obj); int Status { get; set; }}// tạo một lớp thực thi giao diện IStorablepublic class Document : IStorable{ public Document( string s) { Console.WriteLine(“Creating document with: {0}”, s); 178 Thực Thi Giao Diện Ngôn Ngữ Lập Trình C# } // thực thi phương thức Read() public void Read() { Console.WriteLine(“Implement the Read Method for IStorable”); } // thực thi phương thức Write public void Write( object o) { Console.WriteLine(“Impleting the Write Method for IStorable”); } // thực thi thuộc tính public int Status { get { return status; } set { status = value; } } // lưu trữ giá trị thuộc tính private int status = 0;}public class Tester{ static void Main() { // truy cập phương thức trong đối tượng Document Document doc = new Document(“Test Document”); doc.Status = -1; doc.Read(); Console.WriteLine(“Document Status: {0}”, doc.Status); // gán cho một giao diện và sử dụng giao diện IStorable isDoc = (IStorable) doc; isDoc.Status = 0; 179 Thực Thi Giao Diện Ngôn Ngữ Lập Trình C# isDoc.Read(); Console.WriteLine(“IStorable Status: {0}”, isDoc.Status); }}----------------------------------------------------------------------------- Kết quả:Creating document with: Test DocumentImplementing the Read Method for IStorableDocument Status: -1Implementing the Read Method for IStorableIStorable Status: 0-----------------------------------------------------------------------------Ví dụ 8.1 định nghĩa một giao diện IStorable với hai phương thức Read(), Write() và mộtthuộc tính tên là Status có kiểu là số nguyên.. Lưu ý rằng trong phần khai báo thuộc tínhkhông có phần thực thi cho get() và set() mà chỉ đơn giản là khai báo có hành vi là get() vàset(): int Status { get; set;}Ngoài ra phần định nghĩa các phương thức của giao diện không có phần bổ sung truy cập (vídụ như: public, protected, internal, private). Việc cung cấp các bổ sung truy cập sẽ tạo ramột lỗi. Những phương thức của giao diện được ngầm định là public vì giao diện là nhữngràng buộc được sử dụng bởi những lớp khác. Chúng ta không thể tạo một thể hiện của giaodiện, thay vào đó chúng ta sẽ tạo thể hiện của lớp có thực thi giao diện.Một lớp thực thi giao diện phải đáp ứng đầy đủ và chính xác các ràng buộc đã khai báo tronggiao diện. Lớp Document phải cung cấp cả hai phương thức Read() và Write() cùng vớithuộc tính Status. Tuy nhiên cách thực hiện những yêu cầu này hoàn toàn phụ thuộc vào lớpDocument. Mặc dù IStorage chỉ ra rằng lớp Document phải có một thuộc tính là Statusnhưng nó không biết hay cũng không quan tâm đến việc lớp Document lưu trữ trạng thái thậtsự của các biến thành viên, hay việc tìm kiếm trong cơ sở dữ liệu. Những chi tiết này phụthuộc vào phần thực thi của lớp.Thực thi nhiều giao diệnTrong ngôn ngữ C# cho phép chúng ta thực thi nhiều hơn một giao diện. Ví dụ, nếu lớpDocument có thể được lưu trữ và dữ liệu cũng được nén. Chúng ta có thể chọn thực thi cả haigiao diện IStorable và ICompressible. Như vậy chúng ta phải thay đổi phần khai báo trongdanh sách cơ sở để chỉ ra rằng cả hai giao diện điều được thực thi, sử dụng dấu phẩy (,) đểphân cách giữa hai giao diện: public class Document : IStorable, ICompressible ...
Tìm kiếm theo từ khóa liên quan:
giáo trình đại học tài liệu mạng giáo trình cơ điện giáo trình thiết kế tài liệu kế toánTài liệu liên quan:
-
Giáo trình phân tích một số loại nghiệp vụ mới trong kinh doanh ngân hàng quản lý ngân quỹ p5
7 trang 474 0 0 -
MARKETING VÀ QUÁ TRÌNH KIỂM TRA THỰC HIỆN MARKETING
6 trang 302 0 0 -
122 trang 217 0 0
-
QUY CHẾ THU THẬP, CẬP NHẬT SỬ DỤNG CƠ SỞ DỮ LIỆU DANH MỤC HÀNG HÓA BIỂU THUẾ
15 trang 212 1 0 -
BÀI GIẢNG KINH TẾ CHÍNH TRỊ MÁC - LÊNIN - TS. NGUYỄN VĂN LỊCH - 5
23 trang 210 0 0 -
Giáo trình hướng dẫn phân tích các thao tác cơ bản trong computer management p6
5 trang 201 0 0 -
Giáo trình chứng khoán cổ phiếu và thị trường (Hà Hưng Quốc Ph. D.) - 4
41 trang 200 0 0 -
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG - NGÂN HÀNG ĐỀ THI HẾT HỌC PHẦN HỌC PHẦN: TOÁN KINH TẾ
9 trang 177 0 0 -
BÀI GIẢNG LÝ THUYẾT MẠCH THS. NGUYỄN QUỐC DINH - 1
30 trang 176 0 0 -
Giáo trình phân tích giai đoạn tăng lãi suất và giá trị của tiền tệ theo thời gian tích lũy p10
5 trang 170 0 0