Belangrijkste verschil - Overbelasting versus overschrijving in Java
Object-Oriented Programming (OOP) is een belangrijk paradigma in softwareontwikkeling. Het is een methodologie om een programma te ontwerpen met klassen en objecten. Een klas is een blauwdruk. Het beschrijft wat er in het object moet zitten. Het definieert de eigenschappen of attributen en de methoden waaruit het object moet bestaan. Daarom is een object een instantie van een klasse. Deze objecten communiceren met andere objecten. Een belangrijk concept van OOP is polymorfisme. Het is het vermogen van een object om zich op verschillende manieren te gedragen. Polymorfisme is onderverdeeld in twee secties die overbelast en overheersend zijn. Dit artikel bespreekt het verschil tussen deze twee in Java. Het belangrijkste verschil tussen overbelasting en overschrijving in Java is dat de overbelasting de mogelijkheid is om meerdere methoden met dezelfde naam met verschillende implementaties te maken en dat overschrijven is om een implementatie te bieden voor een subklassemethode die al in de superklasse bestaat.
INHOUD
1. Overzicht en belangrijkste verschil
2. Wat is overbelasting in Java
3. Wat wordt overschreven in Java
4. Overeenkomsten tussen overbelasting en overschrijving in Java
5. Vergelijking zij aan zij - Overbelasting versus overschrijving in Java in tabelvorm
6. Samenvatting
Wat is overbelasting in Java?
Overbelasting is de mogelijkheid om meerdere methoden met dezelfde naam te maken met verschillende implementaties. Raadpleeg de onderstaande Java-code.
Figuur 01: Java-programma dat overbelasting uitlegt met een ander aantal argumenten
Volgens het bovenstaande programma bevat klasse A twee methoden met dezelfde naam. De eerste som-methode heeft twee parameters. De tweede som-methode heeft drie parameters. Bij het maken van een object van het type A en het aanroepen van som (2,3), zal het de som-methode aanroepen met twee parameters die som zijn (int a, int b) en 5 retourneren. Bij het maken van een object van het type A en het aanroepen van som (2, 3,4), wordt de andere sommethode aangeroepen met drie parameters die de som is (int a, int b, int c) en geeft 9 terug.
De naam van de methode is hetzelfde, maar het aantal parameters is verschillend. Opgemerkt kan worden dat hetzelfde object zich anders gedraagt. Dit concept staat bekend als overbelasting. Het wordt ook wel Static Binding of Compiles Time Polymorphism genoemd.
Er kan ook worden overbelast met verschillende datatypes. Raadpleeg de onderstaande Java-code.
Figuur 02: Java-programma dat overbelasting uitlegt met een ander aantal argumenten
Volgens het bovenstaande programma bestaat klasse A uit twee methoden met dezelfde naam. De som (int a, int b) methode ontvangt twee gehele getallen. De som (dubbel a dubbel b) krijgt twee dubbele waarden. Bij het maken van het object van het type A en het aanroepen van som (2,3), roept het som (int a, int b) aan en retourneert de waarde 5. Bij het aanroepen van som (3.4, 5.6), roept het som b) en retourneer de waarde 9.0. In dit voorbeeld hebben de methoden dezelfde naam, maar een ander type variabelen. Dit is ook overbelasting.
Wat is overschrijven in Java?
In Java is het mogelijk om subklassen te bouwen met reeds bestaande klassen. In plaats van de nieuwe klasse vanaf het begin te maken, is het mogelijk om de eigenschappen en methoden van de reeds bestaande klasse te gebruiken. De bestaande klasse is de superklasse en de afgeleide klasse is de subklasse. Wanneer de subklasse een implementatie biedt voor een methode die zich al in de superklasse bevindt, staat dit bekend als overriding. Raadpleeg het onderstaande Java-programma.
Figuur 03: Java-programma om te overschrijven
Volgens het bovenstaande programma heeft Klasse A een methodeweergave (). Klasse B strekt zich uit van klasse A, dus de eigenschappen en methoden van klasse A zijn toegankelijk voor klasse B. Klasse B heeft method display () met een specifieke implementatie. Bij het maken van een object van het type A en het aanroepen van de weergavemethode, geeft het de uitvoer B. Hoewel klasse A een weergavemethode heeft, wordt deze overschreven door de weergavemethode van klasse B. Subklasse implementeert een methode die al bestaat in de superklasse.
Dit concept is een soort polymorfisme en staat bekend als overriding. Het wordt ook wel Late Binding, Dynamic Binding, Runtime Polymorphism genoemd.
Wat zijn de overeenkomsten tussen overbelasting en overschrijving in Java?
- Beide zijn soorten polymorfisme.
- Bij overbelasting en opheffing hebben methoden dezelfde naam.
Wat is het verschil tussen overbelasting en overschrijving in Java?
Diff Artikel Midden voor Tafel
Overbelasting versus overschrijven in Java |
|
Overbelasting in Java is de mogelijkheid om meerdere methoden met dezelfde naam te maken met verschillende implementaties. | Overschrijven in Java is het bieden van een specifieke implementatie in de subklasse-methode voor een methode die al in de superklasse bestaat. |
Parameters | |
Bij overbelasting hebben de methoden dezelfde naam, maar een ander aantal parameters of een ander type parameters. | Bij overschrijven hebben de methoden dezelfde naam en moeten de parameters hetzelfde zijn. |
Thema's | |
Overbelasting treedt op binnen de klas. | Overschrijven vindt plaats binnen de twee klassen die een overervingsrelatie hebben. |
Synoniemen | |
Overbelasting wordt gecompileerd tijdpolymorfisme genoemd. | Overschrijven wordt run-time polymorfisme genoemd. |
Samenvatting - Overbelasting versus overschrijving in Java
Polymorfisme is een belangrijk concept in objectgeoriënteerd programmeren. Het biedt de mogelijkheid voor een object om zich op verschillende manieren te gedragen. Dit kan zowel overbelasting als overbelasting zijn. Overbelasting is het polymorfisme tijdens het compileren, en het overschrijven is het polymorfisme tijdens de uitvoering. Ze zijn nuttig bij de ontwikkeling van softwareapplicaties. Het verschil tussen overschrijven en overbelasten is dat overbelasting de mogelijkheid is om meerdere methoden met dezelfde naam met verschillende implementaties te maken en dat overschrijven een specifieke implementatie is in een subklasse-methode voor een methode die al in de superklasse bestaat. Het is mogelijk om zowel overbelasting als overbelasting in Java te implementeren.
Download de PDF Overloading vs Overriding in Java
U kunt de PDF-versie van dit artikel downloaden en voor offline doeleinden gebruiken volgens de citatienota. Download hier de pdf-versie. Verschil tussen overbelasting en overschrijving in Java