Skip to main content

Was ist ein unveränderliches Objekt?

Bei objektorientierter Programmierung ist ein unveränderliches Objekt ein Objekt, dessen Eigenschaften nach dem Erstellen nicht geändert werden können.Die meisten Objekte sind dagegen veränderliche Objekte, was bedeutet, dass einige oder alle Eigenschaften nach der Erstellung frei verändert werden können.Eine Vielzahl von Computersprachen kann unveränderliche Objekte erstellen, darunter Java, C ++, Erlang, TCL und Scala.

Ein unveränderliches Objekt kann auf zwei Arten erstellt werden: Durch das Erstellen einer Klasse, die per Definition unveränderlich oder explizit erstellt wirdEin ansonsten veränderliches Objekt als unveränderlich zu erklären.Die Methodik zum Erstellen einer unveränderlichen Klasse hängt von der verwendeten Computersprache ab.Unabhängig von der Sprache darf eine unveränderliche Klasse keine Methoden haben, die ihre internen Daten ändern können und keine Möglichkeit, dass Methoden geändert und mdash werden.d.h. überschrieben oder überlastet mdash;auf eine Weise, die seine internen Daten ändern würde.Dies ist der kompliziertere Ansatz.Um ein unveränderliches Objekt aus einem ansonsten veränderlichen Objekt zu erstellen, kann man häufig ein Schlüsselwort anwenden, um das Objekt als unveränderlich zu bezeichnen.Eine schnelle Möglichkeit, eine Klasse in Java unveränderlich zu machen, besteht darin, die Klasse sowie alle ihre Methoden und Datenmitglieder endgültig zu deklarieren.Eine ähnliche Strategie kann auch in C ++ mit dem CONT -Schlüsselwort verwendet werden.Diese Ansätze, abhängig vom Klasseninhalt, sind jedoch möglicherweise nicht die besten.Im Allgemeinen können Objekte normalerweise durch sorgfältige Aufrechterhaltung ihrer internen Daten unveränderlich gemacht werden.

Es ist häufig viel einfacher, ein unveränderliches Objekt mit einem Schlüsselwort zu erstellen, als eine ganze Klasse zu schreiben, um unveränderlich zu schreiben.Die Verwendung dieses Ansatzes hat jedoch seine Gefahren.Wenn der Programmierer explizit ein unveränderliches Objekt auf diese Weise auf diese Weise benennt, ist es wichtig, dass alle geeigneten Eigenschaften und Daten zuerst in das Objekt aufgenommen wurden.Wenn Sie sich auf ein unvollständiges Objekt verlassen, kann es gefährlich sein, insbesondere wenn es eine wesentliche Information fehlt.

Wenn ein Objekt veränderlich ist, jedoch unveränderliche Daten ordnungsgemäß erstellt werden müssen, müssen die unveränderlichen Daten initialisiert werden, bevor das veränderliche Objekt erstellt werden kann.Unveränderliche Objekte sind immer unveränderlich, unabhängig davon, ob es sich um Datenwerte oder große Objekte handelt, und müssen immer als solche behandelt werden.Im Allgemeinen kann ein unveränderliches Objekt nach seiner Erstellung nicht veränderlich gemacht werden, obwohl sie manchmal als veränderliche Objekte kopiert werden könnten.Es kann normalerweise angenommen werden, dass ein unveränderliches Objekt und eine seiner Kopien ebenfalls unveränderlich sind, was Daten oder Speicherprobleme verhindern kann.