Java语法基础 #

一、注释 #

注释是程序中用于解释代码的文字,不会被编译器编译。

1.1 单行注释 #

使用 // 开头,注释到行末。

java
// 这是单行注释
int age = 25; // 这也是单行注释

1.2 多行注释 #

使用 /* */ 包围,可以跨越多行。

java
/*
 * 这是多行注释
 * 可以写很多行
 * 用于详细说明
 */
int score = 100;

1.3 文档注释 #

使用 /** */ 包围,用于生成API文档。

java
/**
 * 计算两个数的和
 * @param a 第一个数
 * @param b 第二个数
 * @return 两数之和
 */
public int add(int a, int b) {
    return a + b;
}

常用文档注释标签:

标签 说明
@author 作者
@version 版本
@param 参数说明
@return 返回值说明
@throws 抛出异常说明
@see 参见
@since 引入版本

1.4 注释最佳实践 #

java
// 好的注释:解释为什么这样做
// 使用二分查找提高查询效率,数据已排序
int index = binarySearch(array, target);

// 不好的注释:重复代码内容
// 设置年龄为25
age = 25;

// 好的注释:解释复杂逻辑
// 计算复利:A = P(1 + r/n)^(nt)
double amount = principal * Math.pow(1 + rate/n, n * years);

二、标识符 #

标识符是用于命名变量、方法、类、接口等的名称。

2.1 命名规则(必须遵守) #

  • 由字母、数字、下划线(_)、美元符号($)组成
  • 不能以数字开头
  • 不能是Java关键字
  • 区分大小写
  • 长度无限制
java
// 合法标识符
int age;
int _name;
int $price;
int userName;
int UserAge;

// 非法标识符
int 123abc;      // 不能以数字开头
int class;       // 不能是关键字
int user-name;   // 不能包含减号
int user name;   // 不能包含空格

2.2 命名规范(建议遵守) #

类型 命名规范 示例
类名 大驼峰命名法 HelloWorld, UserService
方法名 小驼峰命名法 getUserName, calculateTotal
变量名 小驼峰命名法 userName, totalCount
常量名 全大写,下划线分隔 MAX_VALUE, DEFAULT_TIMEOUT
包名 全小写 com.example.project

2.3 命名建议 #

java
// 好的命名:见名知意
int studentAge;
String userName;
double accountBalance;

// 不好的命名:无意义
int a;
String s;
double d;

// 好的命名:布尔值用is/has开头
boolean isValid;
boolean hasPermission;

// 好的命名:集合用复数或List/Map结尾
List<String> userNames;
Map<String, User> userMap;

三、关键字 #

关键字是Java语言保留的单词,有特殊含义。

3.1 关键字列表 #

类别 关键字
访问控制 private, protected, public
类/方法/变量修饰 abstract, class, extends, final, implements, interface, native, new, static, strictfp, synchronized, transient, volatile, enum
程序控制 break, case, continue, default, do, else, for, if, instanceof, return, switch, while
错误处理 try, catch, throw, throws, finally
包相关 import, package
基本类型 boolean, byte, char, double, float, int, long, short
变量引用 super, this, void
保留字 goto, const
字面值 true, false, null

3.2 常用关键字详解 #

访问修饰符 #

java
public class Example {
    private int privateVar;      // 只能在本类访问
    protected int protectedVar;  // 同包和子类可访问
    public int publicVar;        // 任何地方可访问
    int defaultVar;              // 同包可访问(默认)
}

类相关 #

java
// class - 定义类
public class Person { }

// extends - 继承
public class Student extends Person { }

// implements - 实现接口
public class UserServiceImpl implements UserService { }

// interface - 定义接口
public interface UserService { }

// abstract - 抽象类或方法
public abstract class Animal { }

final关键字 #

java
// final变量:值不可改变(常量)
final int MAX_SIZE = 100;

// final方法:不能被重写
public final void doSomething() { }

// final类:不能被继承
public final class Constants { }

static关键字 #

java
public class Counter {
    // 静态变量:属于类,所有对象共享
    private static int count = 0;
    
    // 静态方法:属于类,可直接调用
    public static int getCount() {
        return count;
    }
    
    // 静态代码块:类加载时执行
    static {
        count = 0;
    }
}

3.3 保留字 #

gotoconst 是保留字,目前未使用,不能用作标识符。

四、分隔符 #

4.1 分号(;) #

语句结束符,每条语句必须以分号结尾。

java
int a = 10;
System.out.println(a);

4.2 花括号({}) #

定义代码块,用于类体、方法体、循环体等。

java
public class Demo {
    public void method() {
        if (true) {
            // 代码块
        }
    }
}

4.3 方括号([]) #

用于数组声明和访问。

java
int[] arr = new int[5];
arr[0] = 10;

4.4 圆括号(()) #

用于方法声明、调用、表达式分组。

java
public int add(int a, int b) {  // 方法声明
    return (a + b);              // 表达式分组
}
int result = add(1, 2);          // 方法调用

4.5 圆点(.) #

用于访问成员(属性、方法)。

java
System.out.println("Hello");
person.getName();

4.6 逗号(,) #

用于分隔变量声明、方法参数。

java
int a = 1, b = 2, c = 3;
public void method(int a, int b, int c) { }

五、代码规范 #

5.1 缩进 #

使用4个空格缩进,不使用Tab。

java
public class Demo {
    public void method() {
        if (true) {
            System.out.println("Hello");
        }
    }
}

5.2 大括号风格 #

推荐K&R风格(左大括号不换行):

java
// 推荐
if (condition) {
    doSomething();
}

// 不推荐
if (condition)
{
    doSomething();
}

5.3 每行一条语句 #

java
// 推荐
int a = 1;
int b = 2;

// 不推荐
int a = 1; int b = 2;

5.4 空行使用 #

java
public class Demo {
    private int id;
    private String name;
    
    public Demo() {
    }
    
    public void method1() {
    }
    
    public void method2() {
    }
}

5.5 行长度限制 #

每行代码不超过120个字符,超长应换行:

java
// 换行示例
String message = "这是一段很长的字符串," +
                 "需要换行显示";

// 方法调用换行
int result = someObject.method1()
                       .method2()
                       .method3();

六、代码示例 #

综合示例:

java
package com.example.demo;

/**
 * 用户类
 * @author developer
 * @version 1.0
 */
public class User {
    // 常量
    public static final int MAX_AGE = 150;
    
    // 成员变量
    private int id;
    private String name;
    private int age;
    
    /**
     * 构造方法
     * @param id 用户ID
     * @param name 用户名
     * @param age 年龄
     */
    public User(int id, String name, int age) {
        this.id = id;
        this.name = name;
        this.age = age;
    }
    
    /**
     * 获取用户信息
     * @return 用户信息字符串
     */
    public String getUserInfo() {
        return String.format("ID: %d, 姓名: %s, 年龄: %d", 
                            id, name, age);
    }
    
    public static void main(String[] args) {
        User user = new User(1, "张三", 25);
        System.out.println(user.getUserInfo());
    }
}

七、总结 #

Java语法基础要点:

概念 要点
注释 单行(//)、多行(/* /)、文档(/* */)
标识符 字母、数字、_、$组成,不能数字开头
关键字 保留字,有特殊含义
命名规范 类名大驼峰,方法变量小驼峰,常量全大写
代码规范 缩进4空格,每行一条语句,适当空行

良好的编码习惯从基础语法开始!

最后更新:2026-03-26