import java.applet.Applet; // 1. import 區塊 (如 C/C++ #include)
public class TheTestApplet extends Applet { // 2. class define 區塊 (繼承 Applet)
String programOut; // 3. field 區塊 (類別屬性/變數)
// 4. comment 區塊 (// 單行、/* */ 多行,不可嵌套)
public void init() { // 5. methods 區塊 (行為)
programOut = "This is a test!";
displayMessage();
}
public void displayMessage() {
System.out.println(programOut);
}
}
import 告知編譯器使用外部類別,後接類別名 (非檔名),結尾必加分號。extends 表繼承關係。field 即成員變數,描述物件狀態。String programOut; // 宣告
programOut = "test"; // 賦值
String msg = "hello"; // 宣告並賦值
$、_ 組成。$、_。class, int…)。age ≠ Age)。$ 開頭。變數僅在**定義它的程式碼區塊** (一對 {} 內) 及其內部區塊生效。同名變數可在不同區塊共存 (遮蔽)。良好習慣:在區塊開頭宣告。
public void displayMessage() { ... }
// 存取修飾符 [修飾符] 回傳型別 方法名 (參數列表)
| 修飾符 | 可見性 |
|---|---|
| public | 所有類別 |
| protected | 同套件 + 子類別 |
| default (無) | 同套件 |
| private | 僅本類別 |
print、repaint)。存取修飾符 回傳型別 方法名(參數列表) — 唯一識別方法,支援多載。
| 優先級 | 運算子 | 說明 |
|---|---|---|
| 1 | [] () . | 陣列索引、方法呼叫、成員存取 |
| 2 | ++ -- ! ~ +(正) -(負) (型別轉換) | 一元運算子 (右結合) |
| 3 | * / % | 算術 (左結合) |
| 4 | + - | 算術/字串連接 (左結合) |
| 5 | < <= > >= instanceof | 關係比較 |
| 6 | == != | 相等比較 |
| 7 | & | 位元 AND |
| 8 | ^ | 位元 XOR |
| 9 | | | 位元 OR |
| 10 | && | 邏輯 AND (短路) |
| 11 | || | 邏輯 OR (短路) |
| 12 | ?: | 三元條件 (右結合) |
| 13 | = += -= *= /= %= &= ^= |= <<= >>= >>>= | 賦值 (右結合) |
自增/減細節:++i 先增後用;i++ 先用後增。
同四則運算:先括號、後乘除、最後加減;同級左至右。依優先級表逐級求值。
| 套件 | 核心功能 |
|---|---|
java.lang | 最核心:基本型別包裝、String、Math、Thread、System、Class、反射基礎 |
java.io | 標準輸入輸出:Stream、Reader/Writer、File、序列化 |
java.util | 工具集合:Collections、Date/Calendar、Random、Scanner、正則 |
java.net | 網路:URL、Socket、ServerSocket、Datagram、HttpURLConnection |
java.awt.* | AWT 抽象視窗工具包:元件、佈局、事件、圖形、影像 |
java.applet | Applet 基礎 (已淘汰) |
java.sql | JDBC:Connection、Statement、ResultSet、DataSource |
java.text | 格式化:DateFormat、NumberFormat、MessageFormat、Collator |