Overerving
Leer functionaliteit hergebruiken en uitbreiden met overerving
Overerving is een gratis Python Academy-les op CoddyKit. Dit is les 3 van 6. Je kunt de volledige les hieronder gratis lezen en daarna in de browser praktisch oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject Python Academy. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Python Academy bevat in totaal 6 lessen.
Introductie tot overerving
Overerving is een kernconcept binnen objectgeoriënteerd programmeren (OOP) waarmee een klasse (subklasse) attributen en methoden van een andere klasse (superklasse) kan overnemen. Dit bevordert hergebruik van programmacode en maakt de programmacode overzichtelijker.
In deze les leer je hoe je overerving in Python implementeert en de voordelen ervan begrijpt.

Een superklasse definiëren
Een superklasse is de basisklasse waarvan andere klassen erven. Je definieert deze net als elke andere klasse:
# Defining a superclass
class Animal:
def speak(self):
print("Animal speaks")Een subklasse maken
Een subklasse neemt attributen en methoden over van een superklasse. Geef de naam van de superklasse door als parameter om een subklasse te definiëren:
# Defining a subclass
class Dog(Animal):
def speak(self):
print("Dog barks")Methoden overschrijven
Een subklasse kan methoden uit de superklasse overschrijven om specifiek gedrag te bieden:
# Overriding methods in a subclass
class Dog(Animal):
def speak(self):
print("Dog barks")
animal = Animal()
animal.speak() # Outputs: Animal speaks
dog = Dog()
dog.speak() # Outputs: Dog barksDe functie <code>super()</code> gebruiken
Met de functie super() kun je methoden uit de superklasse in de subklasse aanroepen:
# Using super() to call superclass methods
class Dog(Animal):
def speak(self):
super().speak()
print("Dog barks")Meervoudige overerving
Python ondersteunt meervoudige overerving, waarbij een subklasse van meerdere superklassen kan overerven:
# Example of multiple inheritance
class Flyer:
def fly(self):
print("Flying")
class Swimmer:
def swim(self):
print("Swimming")
class Duck(Flyer, Swimmer):
passRelaties tussen klassen controleren
Je kunt relaties tussen klassen controleren met de functies isinstance() en issubclass().
# Checking class relationships
# Checking if an object is an instance of a class
print(isinstance(Dog(), Dog)) # Outputs: True
# Checking if a class is a subclass of another
print(issubclass(Dog, Animal)) # Outputs: TrueVeelgemaakte fouten met overerving
Dit zijn enkele fouten die je moet vermijden:
- Methoden overschrijven zonder indien nodig
super()aan te roepen. - De volgorde voor het opzoeken van methoden (MRO) bij meervoudige overerving verwarren.
- Overerving gebruiken wanneer compositie een betere keuze kan zijn.
Wat hebben we geleerd?
In deze les heb je geleerd:
- Hoe je superklassen en subklassen definieert.
- Hoe je methoden overschrijft en
super()gebruikt. - Hoe meervoudige overerving in Python werkt.
Goed gedaan! Laten we doorgaan naar het volgende onderwerp.

Leer Python met een AI-tutor — gratis
Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.
- Cursussen
- 76
- Lessen
- 320
Veelgestelde vragen
Is de les “Overerving” gratis?
Ja — de volledige tekst van “Overerving” kun je hier gratis op het web lezen. Als je interactief wilt oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is, en de rest van de cursus Python Academy wilt ontgrendelen, kun je upgraden naar CoddyKit PRO. De cursus Python Academy bevat in totaal 6 lessen.
Wat leer ik in “Overerving”?
Leer functionaliteit hergebruiken en uitbreiden met overerving Je oefent met Python Academy door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.
Heb ik ervaring nodig om met Python Academy te beginnen?
Ervaring vooraf is niet nodig. Python Academy op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 3 van 6.
Hoe lang duurt de les “Overerving”?
De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.
Kan ik code schrijven en uitvoeren in deze les over Python Academy?
Ja. Elke les over Python Academy bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.
Alle lessen in deze cursus
- Klassen en objecten
- Attributen en methoden
- Overerving
- Polymorfisme
- Inkapseling en abstractie
- Magische methoden (__str__, __repr__, enz.)