Zum Hauptinhalt springen

Wie viele Objekte werden erstellt, wenn ein new int-Array initialisiert wird[3]

aber das Array selbst ist ein einzelnes Objekt. Genauer gesagt wird ein Objekt des Arrays selbst erstellt, und jedes Element des Arrays ist ein Objekt vom Typ int.

Wenn also ein new int initialisiert wird[3] es wird ein Arrayobjekt und drei Objekte vom Typ int erstellt, die Elemente dieses Arrays darstellen.

Ein Array-Objekt enthält Informationen zu Typ, Größe und Elementreferenzen. Objekte vom Typ int enthalten wiederum den Wert jedes Elements des Arrays vom Typ int.

Initialisieren eines new int-Arrays[3]

Beim Initialisieren des new int-Arrays[3] je nach Kontext werden mehrere Objekte erstellt. In diesem Fall wird das Array selbst und jedes Element dieses Arrays erstellt.

Zuerst wird ein neues int-Array erstellt[3] Das ist ein Container zum Speichern von drei ganzzahligen Werten. Dieses Array ist ein Objekt und hat seinen eigenen Platz im Speicher.

Wenn Sie dann jedes Element im Array erstellen, wird auch ein separates Objekt vom Typ int erstellt, das den entsprechenden Wert im Array speichert. Daher werden in diesem Fall drei Objekte vom Typ int erstellt.

In etwa würde das Speicherschema für diese Initialisierung so aussehen:

Array new int[3]:

[adresse des Array-Objekts] - [element 1]

[adresse des Array-Objekts] - [element 2]

[adresse des Array-Objekts] - [element 3]

Diese Objekte werden in verschiedenen Speicherbereichen gespeichert und können über einen Index auf sie zugegriffen werden.

Anzahl der zu erstellenden Objekte

Beim Initialisieren des new int-Arrays[3] es werden 3 Objekte vom Typ int erstellt. Jedes Objekt stellt einen Speicherplatz im Array dar, den Sie zum Speichern eines ganzzahligen Werts verwenden können.

Vererbung eines Arrays von der Object-Klasse

Wenn wir ein Array mit dem Operator new erstellen, wird eine Instanz der Array-Klasse erstellt, die von der Object-Klasse erbt. Dies bedeutet, dass das Array über alle Eigenschaften und Methoden verfügt, die in der Object-Klasse definiert sind.

Zum Beispiel können wir Methoden der Object-Klasse wie equals() und toString() verwenden, um ein Array in eine Zeichenfolge zu vergleichen oder zu konvertieren.

Wenn Sie also ein Array mit der new int-Anweisung initialisieren[3] erstellt eine Instanz der Array-Klasse, die alle Eigenschaften und Methoden von der Object-Klasse erbt. In diesem Fall wird ein Array von 3 ganzen Zahlen erstellt.

Einfluss der Größe eines Arrays auf die Anzahl der Objekte

Wenn ein Array mit der new int-Anweisung initialisiert wird[3] es werden 3 Objekte vom Typ int erstellt. Die Größe des Arrays gibt die Anzahl der Elemente an, die im Array gespeichert werden sollen. Jedem Element des Arrays wird ein separater Speicherplatz zugewiesen, sodass die Anzahl der Objekte, die bei der Initialisierung des Arrays erstellt werden, mit zunehmender Größe zunimmt.

Zum Beispiel beim Initialisieren eines new int-Arrays[5] es werden 5 Objekte vom Typ int erstellt. Beim Initialisieren des new int-Arrays[10] es werden 10 Objekte vom Typ int erstellt und so weiter.

Daher wirkt sich die Größe des Arrays direkt auf die Anzahl der Objekte aus, die bei der Initialisierung erstellt werden. Wenn Sie die Größe des Arrays erhöhen, werden mehr Objekte erstellt, und wenn Sie die Größe verringern, werden weniger Objekte erstellt.

Unterschied zwischen Array und Objekt

Arrays Dies sind geordnete Sammlungen von Elementen, die denselben Datentyp haben. Die Elemente des Arrays werden nacheinander im Speicher gespeichert und können über einen Index darauf zugegriffen werden. Arrays werden häufig zum Speichern von Daten wie Zahlen, Strings oder Objekten verwendet.

Wenn ein Array mit einem Ausdruck initialisiert wird new int[3] erstellt ein einzelnes Objekt vom Typ Array, das drei Elemente des Typs enthält int. Dieses Array nimmt einen bestimmten Teil des Speichers ein und hat seine Länge. Jedes Element im Array ist ein separater Speicher, der einen Wert des Typs enthalten kann int.

Objekte auf der anderen Seite sind sie Klasseninstanzen und können Status und Verhalten enthalten. Objekte werden mit dem Operator erstellt new und nehmen einen einzigartigen Platz im Gedächtnis ein.

Im Gegensatz zu Arrays können Objekte verschiedene Datentypen enthalten und mit Klassenmethoden verarbeitet werden. Jedes Objekt hat eine eindeutige ID, mit der Sie im Programm darauf zugreifen können. Gleichzeitig können Objekte verwendet werden, um Arrays zu erstellen, wodurch ihre beiden Konzepte kombiniert werden.

Arrays und Objekte haben also ihre eigenen Eigenschaften, und es ist wichtig, die Unterschiede zwischen ihnen zu verstehen, wenn Sie Programme schreiben.