java基礎(chǔ)知識(shí)點(diǎn) Java源程序如何變成Java字節(jié)碼?
Java源程序如何變成Java字節(jié)碼?默認(rèn)情況下,編譯器會(huì)將java文件轉(zhuǎn)換為字節(jié)碼,以便計(jì)算機(jī)能夠理解它,并手動(dòng)使用CMD javacxxxx.java文件通常,java文件表示一個(gè)類(lèi)和一個(gè)字節(jié)碼。
Java源程序如何變成Java字節(jié)碼?
默認(rèn)情況下,編譯器會(huì)將java文件轉(zhuǎn)換為字節(jié)碼,以便計(jì)算機(jī)能夠理解它,并手動(dòng)使用CMD javacxxxx.java文件通常,java文件表示一個(gè)類(lèi)和一個(gè)字節(jié)碼。編譯時(shí)將生成類(lèi)文件。然而,在Java中,一個(gè)源文件可以包含多個(gè)類(lèi),但是只能有一個(gè)公共類(lèi)。其他的成為內(nèi)部類(lèi)。此時(shí),將在編譯期間生成多個(gè)字節(jié)碼文件。一個(gè)是與源文件名對(duì)應(yīng)的公共類(lèi)。類(lèi),另一個(gè)是公共類(lèi)名$內(nèi)部類(lèi)名。類(lèi)編譯java源文件時(shí)將生成多少字節(jié)碼文件?這取決于Java源文件中有多少類(lèi)。在源文件中,使用class關(guān)鍵字定義幾個(gè)類(lèi),編譯時(shí)將生成幾個(gè)字節(jié)碼文件。
字節(jié)碼文件的后綴名是什么?
一個(gè)java項(xiàng)目包含許多帶有“.”的源代碼文件。Java“后綴。除了直接在IDE中調(diào)試外,一般來(lái)說(shuō),代碼類(lèi)型是jar包或war包,最后打包的jar包或war包被發(fā)送到在線服務(wù)器進(jìn)行部署。
部署的方法有很多,最基本的方法是通過(guò)Tomcat容器進(jìn)行部署,也可以通過(guò)Java命令手動(dòng)運(yùn)行jar包中的代碼。
。
在Java代碼打包過(guò)程中,源代碼通常被編譯成一個(gè)字節(jié)碼文件,并帶有“?!邦?lèi)”后綴。JVM只能識(shí)別和解釋字節(jié)碼文件類(lèi)。
對(duì)于已編譯的類(lèi)字節(jié)碼,您需要使用諸如Java-jar之類(lèi)的命令來(lái)運(yùn)行已編寫(xiě)的代碼;一旦使用Java命令,此時(shí)您將實(shí)際啟動(dòng)JVM進(jìn)程。
JVM進(jìn)程將負(fù)責(zé)運(yùn)行這些類(lèi)字節(jié)碼文件,這相當(dāng)于運(yùn)行我們編寫(xiě)的代碼。
要運(yùn)行這些類(lèi)字節(jié)碼文件中的代碼,JVM將使用類(lèi)加載器將編譯后的類(lèi)字節(jié)碼文件加載到JVM的內(nèi)存中
執(zhí)行加載到內(nèi)存中的類(lèi)。當(dāng)JVM需要哪個(gè)類(lèi)時(shí),它將使用類(lèi)加載器來(lái)加載相應(yīng)的類(lèi)。