Ist ein Array ein primitiver Typ oder ein Objekt (oder etwas ganz anderes)?

Die Frage ist grundsätzlich selbsterklärend. Ich konnte keine API für Arrays finden (abgesehen von dieserArraysDies definiert jedoch nur eine Reihe von statischen Hilfsfunktionen für den Umgang mit tatsächlichen Arrays. Wenn es keine Klasse dafür gibt, scheint dies darauf hinzudeuten, dass ein Array kein Array sein kannObject.

Allerdings hat die Tatsache, dass ein Array öffentliche Felder wielength und Methoden, die es wie aufrufen kann.equals() und.clone() scheinen (sehr stark) das genaue Gegenteil zu suggerieren.

Was ist die Erklärung für die seltsame Darstellung und das Verhalten von primitiven Arrays?

Als Hinweis habe ich versucht, die Eclipse-Funktion "Open Implementation" auf der zu verwenden.clone() Methode eines Arrays in der Hoffnung, dass ich sehen kann, wo und wie diese Methode definiert wurde (da int [] sie von Object überschrieb), aber tatsächlich dazu führte, dass meine gesamte Eclipse einfror und abstürzte. .

Antworten auf die Frage(7)

Ihre Antwort auf die Frage