Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Getter und Setter | Klassen Fortgeschritten
Java Erweitert
course content

Kursinhalt

Java Erweitert

Java Erweitert

1. Tiefe Java-Struktur
2. Methoden
3. String Advanced
4. Klassen
5. Klassen Fortgeschritten

book
Getter und Setter

Der beste Weg, den privaten Zugriffsmodifikator zu umgehen

Alle Java-Programmierer verwenden Konstrukte, die als Getter und Setter bezeichnet werden.

Getter und Setter sind Methoden, die einem bestimmten Muster folgen. Sie werden verwendet, um den private Zugriffsmodifikator zu umgehen und Felder aus einer anderen Klasse effektiv zu manipulieren.

Was machen Getter und Setter?

Einfach ausgedrückt, ermöglicht uns der Setter, einem bestimmten Feld, das durch den privaten Zugriffsmodifikator geschützt ist, einen Wert zuzuweisen, während der Getter es uns ermöglicht, den Wert aus einem Feld abzurufen, das durch den privaten Zugriffsmodifikator geschützt ist.

Die Syntax für einen Getter und einen Setter:

java

Main

copy
123456789
// getter public fieldType getFieldName() { return field; } // setter public void setFieldName(fieldType field) { this.field = field; }

Wie Sie im obigen Code sehen können, verwenden wir die Namenskonvention für die Methoden getFieldName() und setFieldName(). Wenn wir also ein Feld private String name haben und einen Getter und einen Setter mit den Namen getName() und setName() erstellen. Es ist auch erwähnenswert, dass der Getter einen Wert vom gleichen Typ wie das name-Feld zurückgibt, während der Setter einen Parameter vom gleichen Typ wie das name-Feld annimmt.

Dies ermöglicht es uns, auf Felder zuzugreifen, die durch den private Zugriffsmodifikator geschützt sind. Schauen wir uns ein Beispiel für den Zugriff auf ein privates Feld aus der Person-Klasse in der main-Klasse an:

java

Main

copy
123456789101112131415161718192021
package com.example; public class Main { public static void main(String[] args) { Person bob = new Person(); bob.setName("Bob"); System.out.println(bob.getName()); } } class Person { private String name; public String getName() { return name; } public void setName(String name) { this.name = name; } }

Wie Sie sehen können, verwenden wir den Setter, um einen Wert für das name-Feld festzulegen, und dann verwenden wir den Getter, um den Wert des name-Feldes auf dem Bildschirm anzuzeigen. Achten Sie auf die Syntax des Getters und Setters sowie darauf, dass das name-Feld in der Person-Klasse durch den private-Zugriffsmodifikator geschützt ist.

Konstruktor vs Getter/Setter

Was ist besser zu verwenden, die Initialisierung über einen Konstruktor + Überschreiben der toString()-Methode oder die Verwendung von Gettern und Settern?

Es ist definitiv besser, Getter und Setter zu verwenden, um auf Felder zuzugreifen, die durch den private-Zugriffsmodifikator geschützt sind. Dies bietet eine größere Flexibilität im Code und verbessert dessen Lesbarkeit. Wenn Sie die Verwendung der getName()-Methode im Code sehen, verstehen Sie sofort, dass diese Methode das Feld mit dem Namen name abruft. Dasselbe gilt, wenn Sie die Verwendung der setName()-Methode sehen, Sie verstehen sofort, dass Sie einen bestimmten Wert für das Feld des Objekts der Klasse zuweisen, in der es verwendet wird. Wenn andere Personen Ihren Code lesen, werden sie froh sein, Getter und Setter zu sehen.

Es ist auch erwähnenswert, dass jedes Feld seinen eigenen Getter und Setter benötigt. Wenn eine Klasse zwei Felder hat, die durch den private-Zugriffsmodifikator geschützt sind, sollte die Klasse einen Getter für jedes Feld haben, was bedeutet, dass zwei Getter und zwei Setter erforderlich sind. Schauen wir uns ein Beispiel an, bei dem wir ein age-Feld zur Person-Klasse hinzufügen:

java

Main

copy
12345678910111213141516171819202122232425262728293031
package com.example; public class Main { public static void main(String[] args) { Person bob = new Person(); bob.setName("Bob"); bob.setAge(27); System.out.println("Person's name: " + bob.getName() + ", Person's age: " + bob.getAge()); } } class Person { private String name; private int age; public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String getName() { return name; } public void setName(String name) { this.name = name; } }

Wie Sie sehen können, haben wir für jedes Feld der Klasse Person einen Getter und einen Setter erstellt. In der main-Methode haben wir die Felder mit dem Setter initialisiert und ihre Werte mit dem Getter auf dem Bildschirm angezeigt. Die Verwendung dieser Methoden ist sehr praktisch, und Sie werden sie in Zukunft häufig verwenden.

1. Was ist der Zweck der Verwendung von Gettern und Settern?

2. Wie lautet die Syntax einer Getter-Methode in Java?

3. Wie lautet die Syntax einer Setter-Methode in Java?

Was ist der Zweck der Verwendung von Gettern und Settern?

Was ist der Zweck der Verwendung von Gettern und Settern?

Wählen Sie die richtige Antwort aus

Wie lautet die Syntax einer Getter-Methode in Java?

Wie lautet die Syntax einer Getter-Methode in Java?

Wählen Sie die richtige Antwort aus

Wie lautet die Syntax einer Setter-Methode in Java?

Wie lautet die Syntax einer Setter-Methode in Java?

Wählen Sie die richtige Antwort aus

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 5. Kapitel 5
We're sorry to hear that something went wrong. What happened?
some-alt