Java 以「完全面向對象」與「跨平台」雙引擎驅動,成為企業級開發基石。本教程以零基礎視角,梳理核心語法與 OO 思維建立路徑。
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
三大核心元素:
HelloWorld,文件名必須同類名(.java)。public static void main(String[] args),JVM 啟動入口,static 免實例化直接調用。System.out.println(...),以分號結尾,花括號界定塊作用域。javac HelloWorld.java # 生成 HelloWorld.class 字節碼 java HelloWorld # JVM 載入類,執行 main 方法
Java 靜態類型,變量必先聲明類型:
| 類型 | 大小 | 示例 | 說明 |
|---|---|---|---|
| byte | 1 byte | 3 | 字節 |
| short | 2 bytes | 3 | 短整數 |
| int | 4 bytes | 3 | 整數(默認) |
| long | 8 bytes | 3L | 長整數 |
| float | 4 bytes | 1.2f | 單精度 |
| double | 8 bytes | 1.2 | 雙精度(默認) |
| char | 2 bytes | 'a' | Unicode 字符 |
| boolean | 1 bit | true | 布爾值 |
int a = 5; // 聲明並初始化 double price = 19.9; // 可在任意位置聲明 // Java 無無符號類型,char 實質為無符號 16 位整數
int[] scores = new int[100]; // 聲明+分配
int[] primes = {2, 3, 5, 7, 11}; // 聲明+初始化(長度自動推斷)
int first = primes[0]; // 索引從 0 開始
// scores.length 獲取長度,越界拋 ArrayIndexOutOfBoundsException
+ - * / %> >= < <= == != → boolean&& || !(短路求值)& | ^ ~ << >> >>>(針對整數二進制位)+= ++ -- ? :// 選擇
if (score >= 90) { grade = 'A'; }
else if (score >= 60) { grade = 'B'; }
else { grade = 'C'; }
// 循環
while (i < 10) { ... }
do { ... } while (cond);
for (int i = 0; i < 10; i++) { ... }
for (int n : numbers) { ... } // 增強 for (JDK 5+)
// 跳轉
break; // 跳出最近循環/switch
continue; // 進入下一輪迭代
// 多路選擇
switch (day) {
case 1: case 2: case 3: case 4: case 5: System.out.println("工作日"); break;
case 6: case 7: System.out.println("周末"); break;
default: System.out.println("錯誤");
}

Human person = new Human();,new 在堆分配內存,調用構造方法初始化。person.height、person.breath()。class Human {
int height; // 數據成員
void breath() { // 方法
System.out.println("hu...hu...");
}
}
public class Test {
public static void main(String[] args) {
Human p = new Human();
p.breath();
System.out.println(p.height); // 0(默認值)
}
}
Java 語法雖與 C/C++ 相似,但無指針、無全局變量、無自由函數、垃圾回收、單根繼承等本質差異,需建立全新心智模型。面向對象非語法糖,而是「將數據與操作封裝、用消息驅動協作」的建模哲學。