[JAVA] Variables / unveränderliches Objekt

Ich bin ein Anfänger, aber ich habe es für das persönliche Studium zusammengefasst

Variables / unveränderliches Objekt

-Instanzen der Klassen ** java.lang.String ** und ** java.io.File ** sind typische Beispiele für unveränderliche Objekte. Der Wert kann später nicht mehr geändert werden Wenn Sie einen neuen Wert verarbeiten möchten, müssen Sie eine neue Instanz erstellen, aber ** "den Wert der Variablen ändern (Verweis auf das Objekt)" **, nicht ** "den Status des Objekts ändern" ** Nicht, du solltest den Unterschied verstehen

-Um ein unveränderliches Objekt zu definieren: (1) Geben Sie keine Methode an, mit der der interne Status eines Objekts geändert werden kann (** Setter-Methode ** usw.). (2) ** Deklarieren Sie die Klasse mit final ** und stellen Sie sicher, dass keine Methode überschrieben wird (verhindert Statusänderungen von Unterklassen). ③ ** Definiere alle Felder mit "private final" ** ("final" ist nicht obligatorisch, aber du kannst expliziter erklären, dass es sich um eine unveränderliche Klasse handelt) (4) Wenn ein variables Objekt im Inneren gehalten wird, wird dieses Objekt nicht nach außen gestellt. (** Getter-Methode ** usw.) Ändern Sie den Wert des variablen Objekts auch nicht intern.

Recommended Posts

Variables / unveränderliches Objekt
[Java] Unterschied zwischen "endgültiger Variable" und "unveränderlichem Objekt"
Variable
statische Variable
Unveränderlich (unveränderlich) Listet die Objektkonvertierungsfunktion in Java8 auf