C # sąsajos pamoka su pavyzdžiu

Turinys:

Anonim

Kas yra sąsajos klasė?

Sąsajos naudojamos kartu su klasėmis apibrėžiant tai, kas vadinama sutartimi. Sutartis yra susitarimas, ką klasė pateiks paraiškai.

Sąsaja deklaruoja savybes ir metodus. Klasė turi tiksliai apibrėžti, koks bus metodas.

Pažvelkime į sąsajos pavyzdį, pakeisdami „Console“ programos klases. Atkreipkite dėmesį, kad mes neveiksime kodo, nes nieko negalima paleisti naudojant sąsają.

Sukurkime sąsajos klasę. Klasė vadinsis „Guru99Interface“. Tada mūsų pagrindinė klasė išplės apibrėžtą sąsają. Visą kodą reikia įrašyti į failą 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();}}}

Kodo paaiškinimas: -

Čia paaiškiname svarbias kodo dalis

  1. Pirmiausia mes apibrėžiame sąsają, vadinamą „Guru99Interface“. Atkreipkite dėmesį, kad sąsajai apibrėžti naudojamas raktinis žodis „sąsaja“.
  2. Toliau mes apibrėžiame metodus, kuriuos naudos mūsų sąsaja. Šiuo atveju mes apibrėžiame tuos pačius metodus, kurie naudojami visuose ankstesniuose pavyzdžiuose. Atkreipkite dėmesį, kad sąsaja tiesiog deklaruoja metodus. Juose kodas neapibrėžiamas.
  3. Tada mes priverčiame mūsų „Guru99Tutorial“ klasę išplėsti sąsają. Čia mes rašome kodą, kuris apibrėžia įvairius sąsajoje deklaruojamus metodus. Toks kodavimas pasiekia šiuos dalykus
    • Tai užtikrina, kad klasė „Guru99Tutorial“ prideda tik kodą, reikalingą „SetTutorial“ ir „GetTutorial“ metodams, ir nieko kito.
    • Tai taip pat užtikrina, kad sąsaja elgtųsi kaip sutartis. Klasė turi laikytis sutarties. Taigi, jei sutartyje sakoma, kad joje turėtų būti du metodai, vadinami „SetTutorial“ ir „GetTutorial“, tada taip ir turėtų būti.

Santrauka

  • Sąsaja apibrėžia sutartį, kurios klasė laikysis. Sąsaja apibrėžia, kokias operacijas klasė gali atlikti.