Hướng dẫn giao diện C # với ví dụ

Mục lục:

Anonim

Lớp giao diện là gì?

Giao diện được sử dụng cùng với các lớp để định nghĩa những gì được gọi là hợp đồng. Hợp đồng là một thỏa thuận về những gì lớp học sẽ cung cấp cho một ứng dụng.

Một giao diện khai báo các thuộc tính và phương thức. Nó phụ thuộc vào lớp để xác định chính xác những gì phương thức sẽ thực hiện.

Hãy xem ví dụ về giao diện bằng cách thay đổi các lớp trong ứng dụng Console của chúng tôi. Lưu ý rằng chúng tôi sẽ không chạy mã vì không có gì có thể chạy bằng giao diện.

Hãy tạo một lớp giao diện. Lớp sẽ được gọi là "Guru99Interface." Lớp chính của chúng ta sau đó sẽ mở rộng giao diện đã xác định. Tất cả mã cần được viết trong tệp Program.cs.

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace DemoApplication{interface Guru99Interface{void SetTutorial(int pID, string pName);String GetTutorial();}class Guru99Tutorial : Guru99Interface{protected int TutorialID;protected string TutorialName;public void SetTutorial(int pID, string pName){TutorialID = pID;TutorialName = pName;}public String GetTutorial(){return TutorialName;}static void Main(string[] args){Guru99Tutorial pTutor = new Guru99Tutorial();pTutor.SetTutorial(1,".Net by Guru99");Console.WriteLine(pTutor.GetTutorial());Console.ReadKey();}}}

Giải thích mã: -

Ở đây, chúng tôi giải thích các phần quan trọng của mã

  1. Đầu tiên chúng tôi xác định một giao diện được gọi là "Guru99Interface." Lưu ý rằng từ khóa "giao diện" được sử dụng để xác định giao diện.
  2. Tiếp theo, chúng tôi đang xác định các phương thức sẽ được sử dụng bởi giao diện của chúng tôi. Trong trường hợp này, chúng tôi đang xác định các phương thức giống nhau được sử dụng trong tất cả các ví dụ trước đó. Lưu ý rằng một giao diện chỉ khai báo các phương thức. Nó không xác định mã trong chúng.
  3. Sau đó, chúng tôi làm cho lớp Guru99Tutorial của chúng tôi mở rộng giao diện. Đây là nơi chúng tôi viết mã xác định các phương thức khác nhau được khai báo trong giao diện. Loại mã hóa này đạt được những điều sau
    • Nó đảm bảo rằng lớp, Guru99Tutorial, chỉ thêm mã cần thiết cho các phương thức "SetTutorial" và "GetTutorial" và không có gì khác.
    • Nó cũng đảm bảo rằng giao diện hoạt động giống như một hợp đồng. Các lớp phải chấp hành hợp đồng. Vì vậy, nếu hợp đồng nói rằng nó phải có hai phương thức được gọi là "SetTutorial" và "GetTutorial," thì đó là cách nó phải như vậy.

Tóm lược

  • Một giao diện xác định một hợp đồng mà lớp sẽ tuân thủ. Giao diện xác định những hoạt động mà lớp có thể thực hiện.