1.java是什么?
java是一種高級的面向對象的程序設計語言 。
2.JVM
Java Virtual Machine,是java程序跨平台的關鍵,不同的平台有不同的JVM,而java字節碼不包含任何與平台相關的信息,不直接與平台交互,而是通過JVM間接與平台交互。應用程序在執行時,JVM加載字節碼,將字節碼解釋成特定平台的機器碼,讓平台執行。
任何一個應用程序都必須轉化為機器碼,才能與計算機進行交互,如果機器碼的來源依賴於具體的平台,那么這個應用程序就不能跨平台。而java應用程序運行時機器碼由java體系的一部分JVM提供,不受平台的限制,所以實現了跨平台。
3.java程序運行過程
程序員編寫的源碼經編譯器編譯轉化為字節碼,字節碼被加載到JVM,由JVM解釋成機器碼在計算機上運行。

4.java版本
針對不同的用途,java分為3個版本:
- Java SE:java的標准版,是其他版本的基礎,主要用於開發桌面應用程序。
- Java EE:java的企業版,主要用於開發企業級分布式網絡程序。
- Java ME:主要用於嵌入式系統開發。
5.JDK
Java Develop Kits,使用java語言開發應用程序必備的工具包,主要包含包括了編譯器、JVM、Java基礎API等。
6.JRE
Java Run Environment,java運行所依賴的環境,包括JVM以及java基礎API。
7.API
Application Programming Interface,應用程序編程接口,是使用java語言編寫應用程序的入口,包含源碼、字節碼幫助文檔三部分。應用程序由一系列方法構成,方法有哪些要求?什么樣的方法是編程語言接受的?API提供了一些基礎的方法,程序員要實現某項功能必須遵循java語言規范,調用這些方法編寫更高級的方法。
8.java特性
- 簡單:java語言是從C++發展起來的,取消了C++中復雜難以掌握的部分,如指針。
- 面向對象:java語言的基礎。java將一切問題都看做對象與對象之間的交互,將對象抽象成方法與屬性的集合。
- 分布性:包含操作分布性與數據分布性兩個方面。操作分布性是指由多個主機共同完成一項功能,數據分布性是分布在多台主機上的數據當做一個完成的整體處理。
- 跨平台:java語言編寫的應用程序,不受平台限制,可以由一種平台遷移到另一種平台。
- 解釋型:使用java語言編寫的源碼被轉化為字節碼,字節碼只有被JVM解釋成機器碼才能被計算機執行。
- 安全性:java語言的底層設計可以有效避免非法操作。
- 健壯性:java提供了許多機制防止運行時出現嚴重錯誤,如編譯時類型檢查、異常處理。
- 多線程:java支持多線程,允許進程內部多個線程同時工作。
