Sobes.tech
Intern

Wat is een getter en setter?

sobes.tech AI

Antwoord van AI

Een getter en een setter zijn speciale methoden die in objectgeoriënteerd programmeren worden gebruikt om toegang te krijgen tot en het wijzigen van de waarden van private (of beschermde) velden van een klasse.

Getter:

  • Biedt gecontroleerde toegang om de waarde van het veld te lezen.
  • Heeft meestal een naam die begint met get (bijvoorbeeld getName()).
  • Kan aanvullende acties uitvoeren voordat de waarde wordt geretourneerd (bijvoorbeeld formattering of validatie).

Setter:

  • Biedt gecontroleerde toegang om een nieuwe waarde in het veld te schrijven.
  • Heeft meestal een naam die begint met set (bijvoorbeeld setName()).
  • Kan validaties uitvoeren op de invoergegevens voordat de waarde aan het veld wordt toegewezen.
  • Maakt het mogelijk om logica te implementeren bij het wijzigen van de veldwaarde (bijvoorbeeld het informeren van andere delen van het programma).

Voorbeeld in Python:

class Person:
    def __init__(self, name):
        self._name = name # Privé veld

    # Getter
    def get_name(self):
        return self._name

    # Setter
    def set_name(self, new_name):
        if isinstance(new_name, str) and len(new_name) > 0:
            self._name = new_name
        else:
            print("Ongeldige naam")

# Gebruik
person = Person("Alice")
print(person.get_name()) # Gebruik van de getter

person.set_name("Bob") # Gebruik van de setter
print(person.get_name())

person.set_name("") # Voorbeeld van het gebruik van de setter met validatie

Het gebruik van getters en setters bevordert encapsulatie, waardoor toegang en wijziging van gegevens binnen het object kunnen worden beheerd, wat zorgt voor een betere structuur en onderhoudbaarheid van de code.