Warum ist eine Objektinitialisierung mit dem Schlüsselwort new
namens dynamische Speicherzuweisung, da Kompilierungszeit selbst wir den Speicher benötigen müssen für das Objekt benötigt.Java dynamische Speicherzuweisung?
auch bitte erklären, was passiert, wenn Sie ClassA object = new ClassA();
tun in Haufen und Stapel.
Warum das Objekt im Heap gespeichert ist, und die Referenz in Stapeln gespeichert? – JavaUser
Der Stapel enthält die lokalen Variablen des Methodenaufrufs. Hier nahm ich an, dass die Variable 'obj' in einem Methodenaufruf war, also ist der Verweis auf das Objekt offensichtlich auf dem Stapel. Das Objekt selbst befindet sich wie jedes andere Java-Objekt im gesamten Programm auf dem Heap. Sogar die Klassen befinden sich auf dem Heap (obwohl ein JIT-Compiler im Hintergrund einige Tricks machen könnte). –