Skillnad mellan överbelastning och överstyrning Skillnad mellan

Anonim

Överbelastning mot överstyrning

Överbelastning och överordnande är båda funktionerna i de flesta programmeringsspråk. Överbelastning är en funktion som tillåter skapandet av flera metoder med samma namn, i samma klass men skiljer sig från varandra vad gäller typen av inmatning och typen av utgången för funktionen. Metodsöverbelastning är vanligtvis förknippad med statiska programmeringsspråk som verkställer typkontroll av funktionssamtal. Dessa är sannolikt relaterade till VB,. Net, C ++, D, Java, etc. Överstyrning är en primär färdighet som används för objektorienterad programmering och görs när en användare omdefinierar en metod som redan har definierats i en befintlig eller förälderklass. I denna programmeringsteknik kodas skript för att utföra specifika uppgifter genom att låta ett skript skrivas i en lägre eller underklass för att implementera en metod eller uppsättning instruktioner som redan har angivits i någon av de överordnade eller överlägsna klasserna.

Vid datorprogrammering har överbelastning härstammat från en metod som har mer än en definition i samma räckvidd och delar samma namn men med den olika signaturen. Metodimplementationerna delar samma namn eftersom de kommer att utföra liknande uppgifter. Överbelastning identifieras också på grund av dess erkännande som ett fall av polymorfism, där vissa eller alla operatörer kan ha olika implementeringar som är beroende av deras angivna argumenttyper. Överstyrning beror på närvaron av en basklassfunktion för sitt utseende. Språkfunktionen Överordnad som tillåter en barnklass att implementera en metod som redan används av en av dess överklassen eller förälderklasser, tillåter subklassmetoden att tilldela samma namn, parameterlista och returnera typ eller signatur som överdriven metod används i superklassen har.

Överbelastning anses vara praktisk eftersom det tillåter programmerare att skriva ett antal olika metoder som råkar ha samma namn. Överbelastning kan ha vissa konsekvenser för ett språk eftersom processorn ändrar namnet på alla överbelastade metoder vid körning. Det löses vid kompileringstid. Medan övergripande är en polymorfism som är utformad på basen av den implicita första parametern som löses vid körning.

Sammanfattning:

Termen överbelastning är vanligtvis förknippad med statiskt programmerade språk och övergripande har fått popularitet i objektorienterad programmering.

En metod i en klass som har samma metodnamn med annan signatur betecknas som en metod för överbelastning. Övergripande känd som en metod i en klass som har samma metodnamn och samma argument / signatur.

Överbelastning delar ett enhetligt förhållande mellan metoder som är tillgängliga i samma klass, men i övervägande del skapas förhållandet mellan en superklassmetod och en underklassmetod.

Överbelastning möjliggör arv från superklassen.

I övervägande del tar subclass-metoden platsen för superklassen.

Överbelastning måste ha olika metodsignatur medan överordnad måste ange samma signatur.