C語言代碼的編譯原理:html
http://blog.csdn.net/neil_wesley/article/details/51265457java
Java語言的編譯原理:web
http://www.cnblogs.com/wade-luffy/p/5925728.html瀏覽器
Java語言平臺版本:工具
(1)J2SE(Java 2 platform Standard Edition):標準版,開發普通桌面應用和商務應用程序,是其餘兩種的基礎;開發工具
(2)J2ME(Java 2 platform Micro Edition):小型版,開發電子消費產品和嵌入式設備,安卓方向;spa
(3)J2EE(Java 2 platform Enterprise Edition):企業版,開發企業環境下應用程序,包含的技術如servlet、JSP等,主要針對web應用程序開發,經過瀏覽器訪問的。操作系統
關於虛擬機:.net
Java語言具備跨平臺性,這是經過JVM(Java Virtual Machine,Java虛擬機)來實現的。Java虛擬機至關於翻譯的角色。命令行
就好比說,中國人與日本人交流須要懂日語和漢語的翻譯官、中國人與韓國人交流須要懂漢語和韓語的翻譯官同樣,將Java語言編譯成不一樣的操做系統(Windows、Linux、Mac等)能夠執行的文件,充當翻譯官角色的就是JVM。
注意:Java具備跨平臺的特性,並非表明JVM是跨平臺的。JVM不是跨平臺的。
JRE和JDK:
JRE:Java運行環境,它包括JVM和核心類庫;
JDK:Java開發工具包,JDK包括了Java的開發工具,也包括JRE。
故:JDK > JRE > JVM。
關於編譯:
在命令行下:javac 後面是"文件名+擴展名",java 後面是"類名"。
如:javac HelloWorld.java
java HelloWorld