Verschil tussen overbelasting en overschrijven in Java

Inhoudsopgave:

Verschil tussen overbelasting en overschrijven in Java
Verschil tussen overbelasting en overschrijven in Java

Video: Verschil tussen overbelasting en overschrijven in Java

Video: Verschil tussen overbelasting en overschrijven in Java
Video: Java OVERLOADING vs OVERRIDING. Object Oriented Java tutorial. #16 2024, November
Anonim

Belangrijk verschil - Overbelasting versus overschrijven in Java

Object-Oriented Programming (OOP) is een belangrijk paradigma in softwareontwikkeling. Het is een methode om een programma te ontwerpen met behulp van klassen en objecten. Een klas is een blauwdruk. Het beschrijft wat er in het object moet staan. 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 meerdere 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 overschrijven in Java is dat overbelasting de mogelijkheid is om meerdere methoden met dezelfde naam te maken met verschillende implementaties en dat overschrijven een implementatie is voor een subklassemethode die al in de superklasse bestaat.

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.

Verschil tussen overbelasting en overschrijven in Java
Verschil tussen overbelasting en overschrijven in Java
Verschil tussen overbelasting en overschrijven in Java
Verschil tussen overbelasting en overschrijven in Java

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 sommethode heeft twee parameters. De tweede sommethode heeft drie parameters. Bij het maken van een object van het type A en het aanroepen van sum(2, 3), roept het de sum-methode aan met twee parameters die sum(int a, int b) zijn en retourneert 5. Bij het maken van een object van het type A en het aanroepen van sum(2, 3, 4), roept het de andere sommethode aan met drie parameters, namelijk de som (int a, int b, int c) en retourneert 9.

De naam van de methode is hetzelfde, maar het aantal parameters is verschillend. Het kan worden waargenomen dat hetzelfde object zich anders gedraagt. Dit concept staat bekend als overbelasting. Het wordt ook wel statische binding of compileert tijdpolymorfisme genoemd.

Er kan ook sprake zijn van overbelasting met verschillende gegevenstypen. Raadpleeg de onderstaande Java-code.

Verschil tussen overbelasting en overschrijven in Java_Figuur 02
Verschil tussen overbelasting en overschrijven in Java_Figuur 02
Verschil tussen overbelasting en overschrijven in Java_Figuur 02
Verschil tussen overbelasting en overschrijven in Java_Figuur 02

Figuur 02: Java-programma dat overbelasting uitlegt met een ander aantal argumenten

Volgens bovenstaand programma bestaat klasse A uit twee methoden met dezelfde naam. De methode sum(int a, int b) ontvangt twee gehele waarden. De som (double a double b) krijgt twee dubbele waarden. Bij het maken van het object van type A en het aanroepen van sum(2, 3), roept het sum(int a, int b) aan en retourneert het de waarde 5. Bij het aanroepen van sum(3.4, 5.6), roept het sum(double a double 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 belangrijker in Java?

In Java is het mogelijk om subklassen te bouwen met reeds bestaande klassen. In plaats van de nieuwe klasse vanaf het begin aan 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 overschrijven. Raadpleeg het onderstaande Java-programma.

Belangrijkste verschil tussen overbelasting en overschrijven in Java
Belangrijkste verschil tussen overbelasting en overschrijven in Java
Belangrijkste verschil tussen overbelasting en overschrijven in Java
Belangrijkste verschil tussen overbelasting en overschrijven in Java

Figuur 03: Java-programma voor overschrijven

Volgens het bovenstaande programma heeft Klasse A een methode display(). Klasse B breidt zich uit van klasse A, dus de eigenschappen en methoden van klasse A zijn toegankelijk voor klasse B. Klasse B heeft methode display() met een specifieke implementatie. Bij het maken van een object van het type A en het aanroepen van de weergavemethode, wordt de uitvoer B gegeven. 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 dwingend. Het wordt ook wel Late Binding, Dynamic Binding, Runtime Polymorphism genoemd.

Wat zijn de overeenkomsten tussen overbelasting en overschrijven in Java?

  • Beide zijn soorten polymorfisme.
  • Bij overbelasting en overschrijven hebben methoden dezelfde naam.

Wat is het verschil tussen overbelasting en overschrijven in Java?

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 biedt een specifieke implementatie in de subklassemethode voor een methode die al bestaat in de superklasse.
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 vindt plaats binnen de klas. Overschrijven vindt plaats binnen de twee klassen die een overervingsrelatie hebben.
Synoniemen
Overbelasting wordt gecompileerde tijdpolymorfisme genoemd. Overschrijven wordt runtime-polymorfisme genoemd.

Samenvatting – Overbelasting versus overschrijven in Java

Polymorfisme is een belangrijk concept in objectgeoriënteerd programmeren. Het biedt de mogelijkheid voor een object om zich op meerdere manieren te gedragen. Dit kan zowel overbelasting als overriding zijn. Overbelasting is het compile-time polymorfisme en overschrijven is het runtime-polymorfisme. Ze zijn nuttig bij de ontwikkeling van softwaretoepassingen. Het verschil tussen overriding en overloading is dat overloading de mogelijkheid is om meerdere methoden met dezelfde naam te creëren met verschillende implementaties en dat Overriding een specifieke implementatie in de subklassemethode biedt voor een methode die al in de superklasse bestaat. Het is mogelijk om zowel overloading als overriding in Java te implementeren.

Download de PDF Overloading vs Overriding in Java

U kunt de PDF-versie van dit artikel downloaden en gebruiken voor offline doeleinden volgens de citatienota. Download hier de PDF-versie. Verschil tussen overbelasting en overschrijven in Java

Aanbevolen: