Abstrakt klasse
En abstrakt klasse er en som bare er ment å være en grunnklasse av andre klasser. Den 'abstrakte' modifikatoren brukes til å lage en klasse abstrakt. En abstrakt modifikator indikerer at det mangler noen implementering som må implementeres i klassen avledet av den. Den abstrakte klassen kan ha abstrakte og ikke-abstrakte medlemmer. En abstrakt klasse skal ha minst én abstrakt metode, ellers er det ikke bruk av å erklære denne klassen som «abstrakt».
Eksempel på abstrakt klasse i C #:
1234567891011 | abstrakt klasse MyCircle abstrakt offentlig int område (); Klasse MyArea: MyCircle public override int Område () retur side * side; ..... |
Som vist i eksemplet ovenfor overstyres den abstrakte metoden 'Areal' inne i MyCircle-klassen i den avledede klassen MyArea.
Interface
Et grensesnitt inneholder bare deklarasjon av medlemmer, inkludert metoder, egenskaper, hendelser eller indeksere. Det inneholder ikke implementeringen av disse medlemmene. En klasse eller struktur implementerer grensesnittet, må gi definisjonen av metoder angitt i grensesnittet. Det betyr at et grensesnitt gir en standardstruktur som den avledede klassen må følge.
Eksempel på et grensesnitt i C #:
12345678910111213141516171819202122 | bruker System.Collections.Generic; bruker System.Linq; bruker System.Text; namespace MyName public interface MyData void getdata (); void showdata (); offentlig klasse NameData: MyData public double getdata () strengnavn; Console.WriteLine ("Skriv inn navnet:"); name = Console.ReadLine (); offentlig ugyldig showdata () Console.WriteLine ("Mitt navn er:", navn); |
Som vist i eksemplet ovenfor har grensesnittet MyData to metoden deklarasjon getdata () og showdata (). Klassen NameData som implementerer dette grensesnittet, bør gi definisjonen av metoder som er oppgitt i MyData-grensesnittet.
Forskjellen mellom abstrakt klasse og grensesnitt