1-Java跨平臺(tái)原理/編譯運(yùn)行機(jī)制 基本語(yǔ)法

平臺(tái)相關(guān)性

  • window系統(tǒng)只能運(yùn)行的可執(zhí)行文件(exe)

  • linux系統(tǒng)只能運(yùn)行l(wèi)inux系統(tǒng)中, 反之亦然

  • 問(wèn)題: 如何做到街機(jī)游戲的跨平臺(tái)性

    • 游戲包: 與平臺(tái)無(wú)關(guān)(在不同平臺(tái)可以移植)

    • 游戲模擬器: 與平臺(tái)有關(guān)(只需要開(kāi)發(fā)一次)

Java的跨平臺(tái)性原理

  • 高級(jí)語(yǔ)言中, 代碼叫源代碼, 存放代碼的文件叫源文件

  • 通過(guò)JavaC編譯工具編譯成字節(jié)碼文件

    • 字節(jié)碼文件(class文件)

      • class文件只能被VM識(shí)別,程序員看不懂

      • 和任何平臺(tái)無(wú)關(guān), 不能直接運(yùn)行在window / linux / mac系統(tǒng)

    • Java虛擬機(jī)(JVM): 可識(shí)別字節(jié)碼文件

  • 啟動(dòng)JVM, 并指定加載哪一份字節(jié)碼文件

    • 啟動(dòng)JVM的工具: Java
  • 總結(jié)

    • 編譯之后會(huì)生成與平臺(tái)無(wú)關(guān)的字節(jié)碼文件

    • 得依賴不同平臺(tái)的虛擬機(jī)(JVM, JVM不跨平臺(tái))

JDK - JRE - JVM

  • JRE概念: Java運(yùn)行環(huán)境, 需要JRE支持,包含JVM

  • JVM概念

    • Java虛擬機(jī), 是運(yùn)行所有Java程序的虛擬計(jì)算機(jī), 好比街機(jī)游戲的模擬器

    • JVM是Java語(yǔ)言的運(yùn)行環(huán)境, 用于讀取并處理編譯過(guò)的與平臺(tái)無(wú)關(guān)的字節(jié)碼(class)文件, 從而實(shí)現(xiàn)Java的可移植性

Java編譯和運(yùn)行機(jī)制

編譯過(guò)程
  • Java語(yǔ)言: 編譯性語(yǔ)言, 解析性語(yǔ)言

Java基本語(yǔ)法

  1. Java語(yǔ)言嚴(yán)格區(qū)別大小寫

  2. 一個(gè)Java源文件里可以定義多個(gè)Java類, 但其中最多一個(gè)類被定義為 public 類, 若源文件中包括了 public 類, 源文件必須和該public類同名

  3. 一個(gè)源文件中包含N個(gè)Java類時(shí), 成功編譯后會(huì)生成N份字節(jié)碼文件, 即每個(gè)類都會(huì)生成單獨(dú)的一個(gè)class類, 且字節(jié)碼文件名和其對(duì)應(yīng)的類名相同

  4. 若一個(gè)類必須運(yùn)行,則必須擁有main方法, 因?yàn)閙ain方法是程序的入口

    • public static viod main(String[], args){}
編程建議
  1. 一個(gè)Java源文件只定義一個(gè)類, 不同類采用不同源文件定義

  2. 將每個(gè)源文件中單獨(dú)定義的類都定義為 public, 保持Java源文件的主文件名與源文件的類名一致(針對(duì)初學(xué))

Java基礎(chǔ)

  • 注釋類型: 多種類型注釋不能嵌套

    1. 單行 // 我是單行注釋

    2. 多行 /*多行注釋*/

    3. 文檔 /**文檔注釋 */

        ##### 關(guān)鍵字
        *   定義: 一些事先定義, 有特殊含義和用途的單詞(小寫開(kāi)頭)
      
        ##### 標(biāo)識(shí)符
        *   定義: 增強(qiáng)代碼的可讀性會(huì)定義很多名字, 如: 類名, 方法名, 變量名
      
        *   命名規(guī)則
            1.  由字母, 數(shù)字, 下劃線, $符組成. 但不能以數(shù)字開(kāi)頭
            2.  大小寫敏感
            3.  不能使用Java中關(guān)鍵字和保留字
            4.  類名首字母大寫, 不能使用Java內(nèi)置類名
      
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容