Methode Overbelasting
Overbelasting van de methode, ook bekend als Functieoverbelasting of Compileertijd polymorfisme, is een concept van twee of meer methoden met dezelfde naam maar met een andere handtekening in dezelfde scope. Er zijn veel programmeertalen die deze functie ondersteunen: Ada, C ++, C #, D en Java.
Voorbeeld van overbelasting van methode in C #
1234567891011121314 | class OverloadShapes float Polygon (int radius, float pi) float circleArea = pi * radius * radius; int Polygoon (int lengte, int breedte) int rectangleArea = lengte * breedte; int Polygoon (int kant) int squareArea = zijkant * zijde; |
Zoals in het bovenstaande voorbeeld wordt getoond, is de methode 'Polygoon' driemaal overladen met een andere handtekening, d.w.z. het type of het aantal parameters is anders.
Methode overschrijven
Methode-overschrijving, ook wel functie-overriding of runtime-polymorfisme genoemd, is een OOP-functie waarmee een onderliggende klasse zijn eigen implementatie kan bieden voor de methode die is gedefinieerd in de bovenliggende klasse. De implementatie in de onderliggende klasse overschrijft de definitie van de methode in de basisklasse, op voorwaarde dat de methode in de onderliggende klasse dezelfde naam, handtekening en retourneringstype heeft.
Voorbeeld van methode die wordt overschreven in C #
12345678910 | class Source1 public void draw () Console.Writeline ("I am in class Source1"); class Source2 breidt Source1 uit public void draw () Console.Writeline ("I am in class Source2"); |
Hier heeft de trekkingsmethode in de klasse Source2 voorrang boven de tekenmethode die is gedefinieerd in de klasse Source1.
Verschil tussen overbelasting van methode en overschrijven van methode