統一代碼風格可顯著降低認知負荷、減少缺陷、提升團隊協作效率。本文整理涵蓋命名規約、格式規範、方法設計原則、JSP 規範的企業級 Java 代碼標準,可直接作為團隊《編碼規範》基線。
com.company.module.submoduleUserService、OrderStatus、@TransactionalSerializable、RunnableUserServiceTest、UserServiceIT (整合測試)getUserById、userName、pageSizeis/has/can/should 開頭:isActive、hasPermissionMAX_UPLOAD_SIZE、DEFAULT_PAGE_SIZEi/j/k)// 推薦
String[] names;
int[] scores;
// 不推薦
String names[];
int scores[];
private String userName; (無前綴,靠 this. 區分)private static final int MAX_SIZE = 100;this.field 明確區分實例變數與參數/局部變數if (condition) {
doSomething();
} else {
doOther();
}
try {
risky();
} catch (Exception e) {
handle(e);
} finally {
cleanup();
}
if (x > 0)、for (int i = 0; i < n; i++)a = b + c、flag ? val1 : val2void method(String param) { (左括號前空格)method(arg)、array[index]if (x == 42) 而非 if ((x) == 42)| 類型 | 語法 | 用途 |
|---|---|---|
| 單行 | // 說明 | 邏輯解釋、TODO/FIXME |
| 多行 | /* ... */ | 大段邏輯、暫時屏蔽代碼 |
| 文檔註釋 | /** ... */ | 公開 API、類、方法、欄位,生成 Javadoc |
@param、@return、@throws、@see 完整Objects.requireNonNull、Preconditions.checkArgument)process()、handle()、doIt()boolean flag 控制雙分支 → 拆分為兩方法synchronized、Lock、Atomic*、ThreadLocal 明確同步策略user-managementUserList.jsp、UserAddAction.jspuserId、pageNoXxxIndex.jspXxxAdd.jsp / XxxAddAction.jspXxxModify.jsp / XxxModifyAction.jspXxxDelAction.jspgoogle_checks.xml 或 sun_checks.xml 為基線定製pre-commit 跑格式檢查,pre-push 跑測試代碼規範不是束縛,而是團隊共識的外化。好規範讓正確的事變容易,錯誤的事變困難。建議:起步採用成熟標準 (Google Java Style / Alibaba Java 開發手冊),結合團隊實況微調,工具化強制執行,定期複盤優化。代碼是給人讀的,順便給機器執行。