Mikä on liitäntäluokka?
Liitäntöjä käytetään luokkien kanssa määrittelemään, mitä kutsutaan sopimukseksi. Sopimus on sopimus siitä, mitä luokka antaa sovellukselle.
Käyttöliittymä ilmoittaa ominaisuudet ja menetelmät. Luokan on määriteltävä tarkalleen, mitä menetelmä tekee.
Tarkastellaan esimerkkiä käyttöliittymästä vaihtamalla luokkia konsolisovelluksessamme. Huomaa, että emme käytä koodia, koska mitään ei voida suorittaa käyttöliittymän avulla.
Luodaan käyttöliittymäluokka. Kurssin nimi on "Guru99Interface". Pääluokkamme laajentaa sitten määritettyä käyttöliittymää. Kaikki koodi on kirjoitettava Program.cs-tiedostoon.
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();}}}
Koodin selitys: -
Tässä selitämme koodin tärkeät osat
- Määritämme ensin käyttöliittymän nimeltä "Guru99Interface". Huomaa, että käyttöliittymän määrittelemiseen käytetään avainsanaa "käyttöliittymä".
- Seuraavaksi määritämme menetelmät, joita käyttöliittymämme käyttää. Tässä tapauksessa määritämme samat menetelmät, joita käytetään kaikissa aikaisemmissa esimerkeissä. Huomaa, että käyttöliittymä vain ilmoittaa menetelmät. Se ei määritä koodia niissä.
- Sitten teemme Guru99Tutorial-luokkaamme laajentamaan käyttöliittymää. Tässä kirjoitetaan koodi, joka määrittelee käyttöliittymässä ilmoitetut menetelmät. Tällaisella koodauksella saavutetaan seuraava
- Se varmistaa, että luokka Guru99Tutorial lisää vain koodin, joka on tarpeen "SetTutorial" - ja "GetTutorial" -menetelmille, eikä mitään muuta.
- Se varmistaa myös, että käyttöliittymä käyttäytyy kuin sopimus. Luokan on noudatettava sopimusta. Joten jos sopimuksessa sanotaan, että sillä tulisi olla kaksi tapaa nimeltä SetTutorial ja GetTutorial, niin sen pitäisi olla.
Yhteenveto
- Liitäntä määrittelee sopimuksen, jota luokka noudattaa. Käyttöliittymä määrittelee, mitä toimintoja luokka voi suorittaa.