Java 基本語法

了解 Java 的基本語法規則,是學習 Java 的第一步。

程式結構

一個基本的 Java 程式結構:

public class MyClass {
    public static void main(String[] args) {
        // 程式碼寫在這裡
        System.out.println("Hello, Java!");
    }
}

結構說明

  • public class MyClass:定義一個公開的類別,類別名稱必須與檔案名稱相同
  • public static void main(String[] args):程式的進入點,Java 程式從這裡開始執行
  • System.out.println():輸出文字到終端機
  • 每個敘述句以分號 ; 結尾
  • 使用大括號 {} 包圍程式區塊

main 方法

main 方法是 Java 程式的進入點:

public static void main(String[] args) {
    // 程式碼
}
  • public:公開存取,讓 JVM 可以呼叫
  • static:靜態方法,不需要建立物件就可以執行
  • void:不回傳任何值
  • String[] args:命令列參數,是一個字串陣列

大小寫敏感

Java 是大小寫敏感的語言:

// 這是三個不同的變數
int myNumber = 1;
int MyNumber = 2;
int MYNUMBER = 3;

命名規則

Java 的命名慣例:

類型命名方式範例
類別PascalCaseMyClassStudentInfo
方法camelCasegetName()calculateTotal()
變數camelCasefirstNametotalAmount
常數UPPER_SNAKE_CASEMAX_SIZEPI
套件全小寫com.example.myapp

合法的識別字:

  • 可以包含字母、數字、底線 _、錢字號 $
  • 不能以數字開頭
  • 不能使用 Java 保留字(如 classpublicint 等)

程式區塊

使用大括號 {} 定義程式區塊:

public class Example {
    // 類別區塊

    public void myMethod() {
        // 方法區塊

        if (true) {
            // if 區塊
        }
    }
}

分號

每個敘述句必須以分號結尾:

int x = 5;
System.out.println(x);
String name = "Java";

空白與縮排

Java 會忽略多餘的空白,但適當的縮排可以增加程式可讀性:

// 可讀性較差
public class Bad{public static void main(String[] args){System.out.println("Hello");}}

// 可讀性較好
public class Good {
    public static void main(String[] args) {
        System.out.println("Hello");
    }
}

建議使用 4 個空格或 1 個 Tab 作為縮排。

保留字

Java 的保留字(關鍵字)不能用作識別字:

abstract  assert    boolean   break     byte
case      catch     char      class     const
continue  default   do        double    else
enum      extends   final     finally   float
for       goto      if        implements import
instanceof int      interface long      native
new       package   private   protected public
return    short     static    strictfp  super
switch    synchronized this   throw     throws
transient try       void      volatile  while

套件宣告與匯入

Java 使用套件 (package) 組織程式碼:

package com.example.myapp;  // 套件宣告

import java.util.Scanner;   // 匯入其他類別
import java.util.*;         // 匯入整個套件

public class MyApp {
    // ...
}

套件宣告必須在檔案的第一行(註解除外),import 敘述在套件宣告之後。