1. Nachdem Sie das Java-Programm kompiliert haben, um die Datei MainApp.class zu erhalten, geben Sie Java AppMain in die Befehlszeile ein. Das System startet den JVM-Prozess. Der JVM-Prozess findet eine Binärdatei namens iPhone im Klassenpfadpfad und lädt die Kategorieinformationen des iPhone in den Methodenbereich des Laufzeitdatenbereichs. Dieser Vorgang wird als Laden des Apple-Telefons bezeichnet.
2. Die JVM findet den Hauptfunktionseingang von AppMain und beginnt mit der Ausführung der Hauptfunktion.
Der erste Befehl der Hauptfunktion ist Animalanimal=newAnimal("Puppy"), damit die JVM ein Animal-Objekt erstellen kann. Zu diesem Zeitpunkt sind jedoch keine Animal-Klasseninformationen im Methodenbereich vorhanden und fügt die Typinformationen der Animal-Klasse in den Methodenbereich ein.
3. Nach dem Laden der Animal-Klasse weist die Java Virtual Machine zunächst einen neuen Animal-Instanzspeicher im Akkumulationsbereich zu und ruft die Strukturfunktion auf, um die Animal-Instanz zu initialisieren (einschließlich Methodentabelle, Java-Dynamik). Bindung) zeigt auf den Methodenbereich.
4. Bei Verwendung von animal.printName() findet die JVM das Tierobjekt basierend auf der Tierreferenz und lokalisiert es in der Methodentabelle der Tiertypinformationen im Methodenbereich Basierend auf der Referenz des Tierobjekts erhält die Funktion printName() das Wort Adresse des Abschnittscodes.
5. Starten Sie die Ausführung der printName()-Funktion.
Erweiterung:
Ausführungsanweisungen
Das kompilierte Bytecode-Dateiformat ist hauptsächlich in zwei Teile unterteilt: Konstantenpool und Methodenbytecode. Der Konstantenpool zeichnet den Arbeitscode der im Code angezeigten Methode (Klassenname, Mitgliedsvariablenname usw.) und Symbolreferenz (Methodenreferenz, Mitgliedsvariablenreferenz usw.) auf und platziert ihn im Arbeitscode verschiedener Methoden in der Kategorie.
Das obige ist der detaillierte Inhalt vonSo führen Sie das Java-Programm aus, nachdem es kompiliert wurde. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!