Intern
Was ist ein Getter und ein Setter?
sobes.tech KI
Antwort von AI
Ein Getter und ein Setter sind spezielle Methoden, die in der objektorientierten Programmierung verwendet werden, um auf die Werte privater (oder geschützter) Felder einer Klasse zuzugreifen und diese zu ändern.
Getter:
- Bietet kontrollierten Zugriff zum Lesen des Feldwerts.
- Hat in der Regel einen Namen, der mit
getbeginnt (z.B.getName()). - Kann zusätzliche Aktionen ausführen, bevor der Wert zurückgegeben wird (z.B. Formatierung oder Validierung).
Setter:
- Bietet kontrollierten Zugriff zum Schreiben eines neuen Werts in das Feld.
- Hat in der Regel einen Namen, der mit
setbeginnt (z.B.setName()). - Kann Validierungen der Eingabedaten durchführen, bevor der Wert dem Feld zugewiesen wird.
- Ermöglicht die Implementierung von Logik beim Ändern des Feldwerts (z.B. Benachrichtigung anderer Programmteile).
Beispiel in Python:
class Person:
def __init__(self, name):
self._name = name # Privates Feld
# 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("Ungültiger Name")
# Verwendung
person = Person("Alice")
print(person.get_name()) # Verwendung des Getters
person.set_name("Bob") # Verwendung des Setters
print(person.get_name())
person.set_name("") # Beispiel für Setter mit Validierung
Die Verwendung von Gettern und Settern fördert die Kapselung, ermöglicht die Steuerung des Zugriffs und der Modifikation von Daten innerhalb des Objekts und sorgt für eine bessere Struktur und Wartbarkeit des Codes.