Vad är en abstrakt metod?

I objektorienterad programmering används subroutiner som kallas "metoder" för att utföra funktioner i ett program. Dessa metoder består av programmeringsuttalanden som utför en åtgärd, ställer in ingångsparametrar för att anpassa åtgärder och kan returnera eller mata ut ett värde på något slags objekt eller klass. Metoder är de åtgärder som utförs i ett program från en viss klass eller i ett objekt och används för att komma åt och manipulera data lagrade i ett objekt. Det finns många olika metoder och var och en har en viss användning. En specifik typ som utförs från en abstrakt superklass och ärvt av underklasser kallas en abstrakt metod.

Generellt utför den abstrakta metoden liten eller ingen implementering inom sin abstrakta superklass. Koder som finns i denna typ av metod betraktas som dummy -koder och implementeras inte själva. Detta betyder inte att den specifika abstrakta metoden i en viss abstrakt klass inte används. Snarare fungerar den abstrakta metoden som en modell eller platsHållare för underklasser för att avsluta implementeringen av metoden.

Superklasser kan innehålla flera underklasser, och alla underklasser i en superklass har vissa liknande tillstånd och beteenden. Abstrakta klasser är därför en typ av virtuell klass som uppvisar virtuell arv. Detta innebär att alla underklasser som härrör från en superklass ärver begränsningarna i superklassen från vilken den härleds. Därför härleds metoder i underklasser från abstrakta metoder för superklasser. Vid programmering och användning av abstrakta metoder måste programmeraren förklara klassen abstrakt snarare än virtuell.

Till exempel innehåller en superklass av "grafiska objekt" underklasserna "cirkel", "fyrkantig" etc. Som sådan har alla cirklar och rutor samma tillstånd - orientering, position, fyllning, linje färg - och beteenden - moveto, storlek, rotera, dra - som "grafiska OBJects. ” Alla underklasser i denna superklass har samma egenskaper, men de implementeras på olika sätt

Med hjälp av en abstrakt metod möjliggör generalisering på toppnivå eller superklass och specifikation på de lägre nivåerna eller underklasser. Denna hierarki minimerar mängden metodprogrammering till varje specifik underklass. Att använda dessa metoder möjliggör också idempotens av underklasser, vilket innebär att om en metod implementeras om och om igen är resultatet detsamma varje gång.

ANDRA SPRÅK

Hjälpte den här artikeln dig? Tack för feedbacken Tack för feedbacken

Hur kan vi hjälpa? Hur kan vi hjälpa?