天天看點

JAVA重拾1

java的運作過程實質?

源代碼被編譯然後被解釋成機器語言

源代碼--->編譯器--->位元組碼--->解釋器---機器碼

.java--->Compiler--->.class--->Interpreter---Machine code

生米--->鍋--->熟飯--->筷子---品嘗

Compiler+Interpreter構成JVM虛拟機的基本功能

靜下來分析可以發現java的整個運作過程隻是把生米用鍋煮成熟飯最後用筷子吃

源代碼就是生米(沒有正常人會把生米拿來吃吧?)

編譯器就是鍋(有各種型号的鍋,但目的都一樣:加工食材)

位元組碼就是熟飯(熟飯還是要用工具來進食的)

解釋器就是筷子(就像有些人隻食口前飯)

機器碼就是品嘗過程了

整個過程JVM負責2次轉譯,可以看出效率并不高,但是正是因為他的存在才讓JAVA可以一次編寫,随處可用

提一個不專業的疑問:

可否将JVM看成給每個平台都是定制的,而程式是一個相對單一的,這一點貌似在hibernate架構的多對多映

射中有相似處