Een Java-Override overbelasting

Java werkt vanuit de bodem omhoog als een object-georiënteerde taal. Dit betekent dat het ondersteunt klassen, objecten en erfenis als deel van zijn functionaliteit. Deze concepten, impliceren als integraal onderdeel van de object-georiënteerd programmeren, dat Java methode overschrijven en methode overbelasting zou steunen. Deze twee concepten van de programmatical helpen de programmeurs van Java uit te breiden van basisklassen en het creëren van flexibele klassen in hun code.

Java-klassen

Klassen zijn de blauwdrukken voor 'objecten' in de Java-taal. Programmeurs schrijven klasse om te definiëren van de gegevenstypen die bepaalde aspecten van een programma, zoals netwerkverbindingen of tekeningen vertegenwoordigen. De klasse en het object zijn fundamentele onderdelen van de Java programmeertaal, omdat naast basisgegevens types zoals gehele getallen of bytes, alles in Java wordt vertegenwoordigd als een object. Java-programma's zijn vaak gebaseerd op de interacties tussen objecten.

Methoden en overerving

Wanneer een programmeur een klasse definieert, definieert ze "methoden" als onderdeel van die klasse. Methoden vormen bewerkingen die een object gedeclareerd uit een klasse kunnen gebruiken. Bijvoorbeeld, een object gedeclareerd van klasse "Bal", die een methode "calculateArea" bevat kan de methode execute en eigen oppervlakte berekenen. Programmeurs kunnen bovendien klassen die "" functionaliteit van andere, basis klassen overnemen maken. Zodat een klasse "SoccerBall" kon overnemen van de functionaliteit van de klasse bal, en gebruik van de methode van de "calculateArea", alsof het een object van klasse "Bal."

Overbelasting van de methoden

Vaak, wanneer een programmeur een klasse maakt, misschien willen ze hebben methoden die dezelfde naam, maar houden verschillende waarden als argumenten. Bijvoorbeeld, duurt de "calculateArea"-methode nul argumenten. Echter als de programmeur wil een andere versie van de "calculateArea"-methode waarmee het resultaat in een bestand worden opgeslagen, kan dan ze gewoon verklaren een andere methode met dezelfde naam dat een File-object als argument neemt. Op deze manier zal de compiler weten welke methode te roepen op basis van het argument dat wordt geleverd:

public int calculateArea() {}
het gebied berekent en retourneert een geheel getal
}

openbare nietige calculateArea (bestand o) {}
Berekent ruimte en het afdrukken naar een bestand
}

Methoden overschrijven

Als een klasse is afgeleid van functionaliteit van een andere klasse, zoals in het geval van "Bal" en "SoccerBall," kunt de klasse die van de klasse base overerft "overschrijven" de methoden van de basisklasse. Programmeurs doen dit vaak als de overneem klasse een gelijkaardige functionaliteit heeft, maar gespecialiseerd voor de klasse. Om dit te illustreren, wellicht de klasse "Bal" een "calculateArea"-methode. De klasse "SoccerBall" die van "Bal overerft" kunt de oorspronkelijke methode gebruiken, of het kan de methode overschrijven door te verklaren zijn eigen versie van de methode in de klassendefinitie:

klasse bal {}

public int calculateArea() {}
Ball's methode
}
}

klasse SoccerBall breidt bal {}
public int calculateArea() {}
SoccerBall van de versie, zal niet noemen Ball's versie
}
}