Heim  >  Artikel  >  Java  >  Zusammenfassung des Klassendateiformats in Java

Zusammenfassung des Klassendateiformats in Java

怪我咯
怪我咯Original
2017-07-02 10:28:111433Durchsuche

Dieser Artikel stellt hauptsächlich die relevanten Informationen im Java-Klassenformat vor. Freunde, die sie benötigen, können darauf verweisen

Wir alle wissen, dass die JVM nur Dateien im Klassenformat erkennen kann und Quelldateien nur von uns Menschen erkannt werden und von der JVM nicht erkannt werden können. Dann müssen wir die Java-Sprache und JVM auf einer tieferen Ebene verstehen. Es reicht nicht aus, nur die Quelldatei zu verstehen, da viele Verhaltensweisen der virtuellen Maschine in Klassendateien definiert sind und wir sie verstehen müssen Die JVM Um sich anders zu verhalten, müssen Sie auch die „Sprache“ lernen, die die JVM verstehen kann, nämlich das Klassendateiformat. So wie wir einen Ausländer tiefgreifend verstehen wollen, ist es unmöglich, ihn nur aus unserer eigenen Perspektive zu verstehen. Nur wenn Sie seine Sprache lernen, können Sie ihn besser verstehen, denn nur wenn Sie verstehen, was er sagt, können Sie ihn besser verstehen Er tut es und versteht dann seine Art, Dinge zu tun und seine Persönlichkeitsmerkmale. Natürlich gibt es für Sie noch eine andere Möglichkeit, Ausländer zu verstehen: Lassen Sie sie Chinesisch lernen und Sie können auf Chinesisch kommunizieren. In der Java-Welt ist dies jedoch unmöglich, da die JVM die Quelldatei nicht erkennen kann und Sie daher nur die Sprache lernen können, die die JVM verstehen kann ---- Klassendatei.

Das Verständnis des Formats von Klassendateien ist nicht nur von entscheidender Bedeutung für das Verständnis des Verhaltens von JVM, es kann uns auch ein klareres und tieferes Verständnis des Java-Codes vermitteln. Schließlich sind Klassendateien von uns geschriebene Java-Codes. „Übersetzt“. Sobald Sie das Format der Klassendatei verstanden haben, können Sie wissen, wie Methoden dargestellt werden, wie Felder dargestellt werden, wie Vererbung dargestellt wird, wie Methodenkörper dargestellt werden usw. Für alles in der Quelldatei gibt es eine entsprechende Beschreibungsform in der Klassendatei. Dies gibt uns Sicherheit beim Schreiben von Code. Wenn es ein Problem mit dem Code gibt, können wir die Ursache schneller herausfinden, da wir die vom Quellcode generierte Klassendatei dekompilieren und sehen können, wie sie intern implementiert wird. Schließlich ist das Prinzip klar, der Quellcode ist nur eine Darstellung.

Darüber hinaus können Klassendateien nicht nur durch Java-Code generiert werden. Viele andere JVM-basierte Sprachen generieren ebenfalls Standardklassendateien, die dann von der virtuellen Maschine ausgeführt werden. Beispielsweise basiert die Scala-Sprache, die ich kürzlich lerne, auf virtuellen Maschinen. Der Scalac-Compiler kann Scala-Code in Klassendateien kompilieren. In diesem Fall kann das Verständnis des Klassendateiformats eine gute Rolle beim Erlernen anderer JVM-basierter Sprachen spielen. Sie werden feststellen, dass das Erlernen dieser Sprachen sehr einfach ist, wenn Sie ausreichend über Klassendateien und JVM wissen. Die Klassendatei ist eine Schnittstelle der JVM. Egal welchen Code Sie in die Quelldatei schreiben, ob Java oder Scala, solange Sie eine bestimmte Methode verwenden, kann der von Ihnen geschriebene Code konvertiert werden in eine Klassendatei mit dem richtigen Format umwandeln, dann kann die JVM sie für Sie ausführen. Wenn Sie gut genug sind, können Sie selbst eine Sprache erstellen, einen Compiler für diese Sprache implementieren, sie in eine Klasse kompilieren, und dann kann die virtuelle Maschine sie auch ausführen, und Designer von Scala, Groovy und anderen Sprachen sind bereits dabei dies tun.

Das obige ist der detaillierte Inhalt vonZusammenfassung des Klassendateiformats in Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn