java基礎一——語言概述

java概述

1. java發展小知識

jdk1.5是java歷史上一個里程碑式的版本,所以jdk1.5改爲jdk5.0.之後一直延續。jdk1.8(8.0)是一個java的另一個具有比較多新特性的版本,需要好好學學習。

2. java的分類

  • J2SE(javaSE)

    早期主要用於桌面級應用的開發。但是隨着時代的發展,
    基本淘汰。所以現在的javaSE多用於指SE體系中除去桌面開發的那部分(也就是java的基礎知識)

  • J2EE(javaEE)

    主要用於開發企業級應用,比如網頁開發。也是現在java的主流體系。

  • J2ME(javaME)

    主要用於支持手機應用程序。但是現在基本已經淘汰,主流爲androd,ios佔據移動端天下。

  • javaCard

    主要是用於智慧卡或與智慧卡相近的裝置上(如飯卡,公交卡等)。

3. java語言特性

  • 面向對象
    • 兩個基本概念:類,對象
    • 三大特性:封裝,繼承,多態
  • 健壯性
    • 吸收了c/c++的語言優點,但是摒棄掉影響語言健壯性的特點(如指針,內存申請與釋放),同時提供一個相對安全的內存管理和訪問機制。
  • 跨平臺性
    • 所謂 ‘一處編寫,處處運行’ 。即java編寫的程序在不同的系統平臺上都可以運行。
    • 原理:就是採用JVM負責程序的運行。

4. java虛擬機簡介(JVM簡介)

java虛擬機(JVM)就是一個虛擬的java程序運行環境。它保證了java的跨平臺性。並且由它來進行內存的自動管理,使程序員能夠將更多的注意力放在程序本身。

  • java程序簡介運行流程

    java程序 —>經過編譯—>字節碼—>由JVM讀入字節碼文件解釋執行—>操作系統—>硬件

注意:編譯執行和解釋執行

  • 編譯執行:即一次性將整個程序都翻譯完然後再執行翻譯結果。
  • 解釋執行:即逐條翻譯並執行程序語句,一句一句的翻譯,執行。

    對於java來說,它是一個混合使的過程。即既有編譯執行又有解釋執行。

    1. Java代碼經過javac編譯成class文件(字節碼)
    2. class(字節碼)文件經過JVM編譯成機器碼進行解釋執行(解釋執行)
    3. 對於熱點代碼,JIT(JustInTime)編譯器會在運行時將其編譯爲機器碼執行(編譯運行)

參照:具體請參照java中編譯執行和解釋執行

5. JDK,JRE,JVM關係

  • JDK(java development kit Java開發工具)

    用於開發java程序,其包含JRE和一些開發工具(如:編譯工具javac.exe,打包工具jar.exe等)。

  • JRE(java runtime enviroment java運行環境)

    用於提供java運行環境。包含java虛擬機和所需核心類庫。
    注意:有了JRE只能運行而不能開發java程序嗷。

  • JVM(java viro machen java虛擬機)

    用於執行.class字節碼文件,保證java跨平臺性。同時也主要進行java的 內存自動管理垃圾回收

    在這裏插入圖片描述

  • 三者關係

    JDK = JRE + 開發工具
    JRE = JVM + java核心類庫
    JVM:java虛擬機

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章