OOP-Principes Polymorfisme
Polymorfisme
Polymorfisme is een ander principe van OOP. Je bent al in aanraking gekomen met polymorfisme toen je methoden overloadde en override. In wezen is dit de essentie van polymorfisme. Maar de definitie van polymorfisme kan wat intimiderend overkomen:
Maar in werkelijkheid is het veel eenvoudiger dan het lijkt. Polymorfisme kan, eenvoudig gezegd, worden onderverdeeld in 2 delen:
- Methode-overloading: wat je hebt geleerd in deze paragraaf, maar laten we het herhalen.
Laten we naar een voorbeeld kijken: we moeten een methode schrijven die een int-parameter accepteert en een String retourneert, evenals een methode die hetzelfde doet maar met een long-parameter. Bekijk de volgende codefragment:
Main.java
1234567public String doStuff(int parameter) { //... } public String doStuff(long parameter) { //... }
Zoals hierboven te zien is, hebben we twee methoden met dezelfde naam aangemaakt die verschillende taken kunnen uitvoeren. Dit wordt methode-overloading genoemd.
- Methode-overriding:
Dit onderwerp is eerder aan bod gekomen toen je de
toString-methode hebt overschreven in deze hoofdstuk. Laten we het nogmaals kort herhalen.
Laten we een codevoorbeeld bekijken waarin wordt getoond hoe we een methode kunnen overschrijven. We hebben een klasse genaamd Airplane die overerft van de klasse Transport. In de klasse Transport bevindt zich een methode genaamd move die "This transport has started moving" retourneert.
Voor het vliegtuig willen we dat het "start flying" in plaats van "moving". Om dit te bereiken, zullen we de move-methode in de subklasse overschrijven:
Transport.java
Airplane.java
1234567public class Transport { // some fields public String move() { return "This transport has started moving"; } }
Zoals je kunt zien, hebben we de methode van de bovenliggende klasse in de onderliggende klasse overschreven zoals vereist.
Op deze manier vult polymorfisme overerving zeer goed aan. Door polymorfisme kunnen we onze code eenvoudig en optimaal uitbreiden, waardoor deze flexibel wordt.
1. Waarom hebben we polymorfisme nodig in Java?
2. Hoe vult polymorfisme overerving aan?
3. Welk sleutelwoord wordt gebruikt om een methode te overladen?
Bedankt voor je feedback!
Vraag AI
Vraag AI
Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.
Awesome!
Completion rate improved to 4.76
OOP-Principes Polymorfisme
Veeg om het menu te tonen
Polymorfisme
Polymorfisme is een ander principe van OOP. Je bent al in aanraking gekomen met polymorfisme toen je methoden overloadde en override. In wezen is dit de essentie van polymorfisme. Maar de definitie van polymorfisme kan wat intimiderend overkomen:
Maar in werkelijkheid is het veel eenvoudiger dan het lijkt. Polymorfisme kan, eenvoudig gezegd, worden onderverdeeld in 2 delen:
- Methode-overloading: wat je hebt geleerd in deze paragraaf, maar laten we het herhalen.
Laten we naar een voorbeeld kijken: we moeten een methode schrijven die een int-parameter accepteert en een String retourneert, evenals een methode die hetzelfde doet maar met een long-parameter. Bekijk de volgende codefragment:
Main.java
1234567public String doStuff(int parameter) { //... } public String doStuff(long parameter) { //... }
Zoals hierboven te zien is, hebben we twee methoden met dezelfde naam aangemaakt die verschillende taken kunnen uitvoeren. Dit wordt methode-overloading genoemd.
- Methode-overriding:
Dit onderwerp is eerder aan bod gekomen toen je de
toString-methode hebt overschreven in deze hoofdstuk. Laten we het nogmaals kort herhalen.
Laten we een codevoorbeeld bekijken waarin wordt getoond hoe we een methode kunnen overschrijven. We hebben een klasse genaamd Airplane die overerft van de klasse Transport. In de klasse Transport bevindt zich een methode genaamd move die "This transport has started moving" retourneert.
Voor het vliegtuig willen we dat het "start flying" in plaats van "moving". Om dit te bereiken, zullen we de move-methode in de subklasse overschrijven:
Transport.java
Airplane.java
1234567public class Transport { // some fields public String move() { return "This transport has started moving"; } }
Zoals je kunt zien, hebben we de methode van de bovenliggende klasse in de onderliggende klasse overschreven zoals vereist.
Op deze manier vult polymorfisme overerving zeer goed aan. Door polymorfisme kunnen we onze code eenvoudig en optimaal uitbreiden, waardoor deze flexibel wordt.
1. Waarom hebben we polymorfisme nodig in Java?
2. Hoe vult polymorfisme overerving aan?
3. Welk sleutelwoord wordt gebruikt om een methode te overladen?
Bedankt voor je feedback!