首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 綜合教學

張孝祥 Java 第一講 - Java 特點、運行環境與開發環境搭建全記錄

     編輯:Java 綜合教學

Java 入門第一課:從「一次編譯,到處運行」到 HelloWorld 完整實踐

張孝祥老師 Java 基礎課程第一講筆記,涵盖 Java 核心特點、三大版本體系、JDK/JRE 區別、環境變量配置避坑、首個程序編寫與編譯運行全流程。

一、Java 核心特點:跨平台的秘密

C 語言:.c → 編譯 → .exe (Windows) / ELF (Linux) → 對應 OS 運行
Java:  .java → javac → .class (字節碼) → JVM (各平台專用) → 運行
  • 字節碼是中間語言,屏蔽了底層 OS/硬件差異。
  • JVM 是 Java 跨平台的基石:不同 OS 提供對應 JVM 實現。

二、Java 三重內涵

  1. 編程語言:語法規則、關鍵字、特性。
  2. 開發工具:JDK 包含 javac 編譯器、調試工具、基礎類庫。
  3. 運行環境:JRE 包含 JVM、核心類庫、支撐文件;無編譯器。

三、版本體系

四、環境變量配置(重點避坑)

  1. JAVA_HOME:指向 JDK 安裝根目錄(含 bin、lib、include)。
  2. PATH:追加 %JAVA_HOME%\bin,使任意目錄可直接執行 java/javac。
  3. CLASSPATH:設置為 .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar。
    • 關鍵:. 代表當前目錄,必須保留,否則無法加載當前目錄下的類。
    • 分號 ; 分隔路徑,等號兩邊不能有空格。
  4. 系統變量修改需重啟命令行窗口生效;用戶變量需重啟電腦。
  5. 驗證:java -version、javac -version 輸出版本信息即成功。

五、體驗 Java 編程全流程

1. 編寫源文件 Test.java

public class Test {                    // ① public 類名必須與文件名一致
    public static void main(String[] args) { // ② 程序入口
        System.out.println("Hello World!");
    }
}
class Test1 {                          // ③ 同一文件可定義多個非 public 類
    public static void main(String[] args) {
        System.out.print("Hello World2!");
    }
}

2. 編譯

javac Test.java
// 產生 Test.class 和 Test1.class 兩個字節碼文件

常見錯誤:找不到文件 → 檢查擴展名是否為 .java(資源管理器默認隱藏擴展名)。

3. 運行

java Test          // 輸出 Hello World!
java Test1         // 輸出 Hello World2!

類加載器按 CLASSPATH 查找類文件。

六、JVM 運行三階段

  1. 類加載:ClassLoader 讀取 .class 文件進入方法區。
  2. 字節碼校驗:確保格式正確、無惡意代碼(安全性基石)。
  3. 執行:解釋器將字節碼翻譯為機器碼執行(或 JIT 編譯優化)。

七、新手必記口訣

  • 一個源文件只能有一個 public 類,類名=文件名。
  • main 方法固定簽名:public static void main(String[] args)。
  • CLASSPATH 必須包含 .,否則當前目錄類找不到。
  • 路徑中不要包含中文或空格,極易引發找不到文件錯誤。

這一講奠定了 Java 開發環境搭建與基本運行機制的認知基石,後續課程將展開面向對象、集合、多線程等核心語法。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved
版本全稱定位
Java SEStandard Edition桌面應用、基礎 API、標準開發
Java EEEnterprise Edition企業級分布式、Web 服務、中間件
Java MEMicro Edition嵌入式、移動設備、資源受限環境