Die Methode, mit der Werte in den Feldern von Java-Objekten festgelegt (festgelegt) werden, ist ** setter **. Der Wert, um den Wert zu erhalten, ist ** getter **.
Konventionell lauten die Namen, Argumente und Rückgabewerte wie folgt.
Methodenname | Streit | Rückgabewert | |
---|---|---|---|
Getter | getXXX() | Keine Argumente | Feldwert |
Setter | setXXX() | Ein Argument | Leertyp |
Um den Inhalt der Objekte, die ein Programm bilden, für andere Objekte so unsichtbar wie möglich zu machen. Das Prinzip der Kapselung besteht darin, alle Felder privat zu machen, damit andere Klassen nicht auf das Feld zugreifen können.
Feldname des privaten Typnamens();
Durch Kapselung privat gemachte Felder können von anderen Klassen nicht direkt aufgerufen werden. Stellen Sie einen indirekten Zugriff bereit, falls Sie darauf zugreifen müssen. Bereiten Sie insbesondere die folgenden Methoden für den indirekten Zugriff vor.
Rückgabetyp Methodenname(){
Feldname zurückgeben;
}
Diese Methode ist nur eine Methode, die den Wert des Feldes mit return zurückgibt. Daher ist der Rückgabetyp der gleiche wie der Feldtyp. Zum Beispiel
private int piyo;
Gegen
public int getPiyo(){
return piyo;
}
Wird sein.
Privat gemacht durch Aufrufen der Methode "getPiyo ()" in einer anderen Klasse Sie können den Wert des int-Typfelds "piyo" abrufen. Kurz gesagt, wenn Sie den Getter aus einer anderen Klasse aufrufen, erhalten Sie den Wert des privaten Felds als Rückgabewert. Das ist ein Getter. Auf diese Weise wird die Methode "getPiyo ()" verwendet, selbst wenn sich der Feldname oder die Werterfassungslogik ändern Alles was Sie tun müssen, ist das Innere neu zu schreiben. Es gibt auch den Vorteil, dass Sie keine anderen Klassen neu schreiben müssen, die die Methode "getPiyo ()" verwenden.
Es stellt sich heraus, dass Getter Werte für private Felder erhalten können. Da der Getter jedoch eine Methode ist, die einfach den Wert des Feldes mit return zurückgibt, kann der Wert des Feldes nicht neu geschrieben werden. Die Methode zum Umschreiben des Werts ist der Setter. Bereiten Sie im Allgemeinen die folgende Methode vor.
Rückgabetyp Methodenname(Streit){
Feldname=Streit;
}
Diese Methode verwendet den Wert, den Sie in das Feld eingeben möchten, als Argument und weist ihn einfach dem Feld innerhalb der Methode zu, sodass der Argumenttyp mit dem Feld identisch ist. Zum Beispiel
private int hoge;
Gegen
public void setPiyo(int piyo){
piyo = hoge;
}
Wird sein. Dies weist dem Feld "piyo" nur den Wert "hoge" zu, der als Argument empfangen wurde. Auf diese Weise wird die Methode "setPiyo ()" in der Klasse wie der Getter verwendet, auch wenn sich etwas ändert Alles was Sie tun müssen, ist das Innere neu zu schreiben. Es hat auch den Vorteil, dass andere Klassen, die die Methode "serPiyo ()" verwenden, nicht neu geschrieben werden müssen.
Eine Methode, die für den indirekten Zugriff auf ein von pravate verborgenes Feld wie einen Setter oder Getter vorbereitet wurde, wird als ** Zugriffsmethode ** bezeichnet. Durch den Zugriff auf das Feld mit der Accessor-Methode ist es möglich, die Abhängigkeit zwischen Klassen zu verringern, das Hinzufügen / Ändern zu vereinfachen und den Freiheitsgrad zu erhöhen.
Recommended Posts