Video: Java Webprogrammierung II - Lektion 4: Objektrelationales Mapping 2024
Wenn Sie mit Objekten in Java arbeiten, müssen Sie verstehen, wie Objekte geboren werden, wie sie leben und sterben. Dieses Thema wird als Lebenszyklus eines Objekts bezeichnet und lautet ungefähr so:
1. Bevor ein Objekt aus einer Klasse erstellt werden kann, muss die Klasse geladen werden. Dazu lokalisiert die Java Runtime die Klasse auf der Platte (in einer. Class Datei) und liest sie in den Speicher ein. Dann sucht Java nach statischen Initialisierern, die statische Felder initialisieren - Felder, die nicht zu einer bestimmten Instanz der Klasse gehören, sondern zur Klasse selbst gehören und von allen aus der Klasse erzeugten Objekten gemeinsam genutzt werden.
Eine Klasse wird geladen, wenn Sie ein Objekt zum ersten Mal aus der Klasse erstellen oder wenn Sie zum ersten Mal auf ein statisches Feld oder eine statische Methode der Klasse zugreifen. Wenn Sie beispielsweise die Hauptmethode einer Klasse ausführen, wird die Klasse initialisiert, weil die Hauptmethode statisch ist.
2. Ein Objekt wird aus einer Klasse erstellt, wenn Sie das neue Schlüsselwort verwenden. Um die Klasse zu initialisieren, reserviert Java Speicher für das Objekt und richtet einen Verweis auf das Objekt ein, damit die Java-Laufzeitumgebung den Überblick behalten kann. Dann ruft Java den Klassenkonstruktor auf, der wie eine Methode ist, aber nur einmal aufgerufen wird, wenn das Objekt erzeugt wird. Der Konstruktor ist für die Verarbeitung verantwortlich, die zum Initialisieren des Objekts erforderlich ist, z. B. Initialisieren von Variablen, Öffnen von Dateien oder Datenbanken usw.
3. Das Objekt lebt sein Leben und bietet Zugang zu seinen öffentlichen Methoden und Feldern für jeden, der es will und braucht.
4. Wenn es an der Zeit ist, dass das Objekt stirbt, wird das Objekt aus dem Speicher entfernt und Java verliert seine interne Referenz darauf. Sie müssen Objekte nicht selbst zerstören. Ein spezieller Teil der Java-Laufzeitumgebung namens Garbage Collector sorgt dafür, dass alle Objekte zerstört werden, wenn sie nicht mehr verwendet werden.