- Taipei, Taiwan
-
《阿里Java開發手冊》 | 編程規約 - 集合處理
【強制】 關於hashCode和equals的處理,遵循如下規則: 只要重寫 equals,就必須重寫 hashCode。 因為 Set 存儲的是不重複的對象,依據 hashCode 和 equals 進行判斷,所以 Set 存儲的對象必須重寫 這兩個方法。 如果自定義對...
-
《阿里Java開發手冊》 | 編程規約 - 日期時間
【強制】 日期格式化時,傳入 pattern 中表示年份統一使用小寫的 y。 說明: 日期格式化時,yyyy 表示當天所在的年,而大寫的 YYYY 代表是 week in which year(JDK7 之後引入的概念),意思是當天所在的週屬於的年份,一周從周日開始,週六結束,只要本週...
-
《阿里Java開發手冊》 | 編程規約 - OOP規約
【強制】 避免通過一個類的對象引用訪問此類的靜態變數或靜態方法,無謂增加編譯器解析成本,直接用 類名 來訪問即可。 【強制】 所有的覆寫方法,必須加@Override註解。 說明: getObject()與 get0bject()的問題。一個是字母的 O,一個是數字的...
-
《阿里Java開發手冊》 | 編程規約 - 程式碼格式
【強制】 如果是大括號內為空,則簡潔地寫成{}即可,大括號中間無需換行和空格;如果是非空程式碼塊則: 1.左大括號前不換行。 2.左大括號後換行。 3.右大括號前換行。 4.右大括號後還有 else 等程式碼則不換行;表示終止的右大括號後必須換行。 ...
-
《阿里Java開發手冊》 | 編程規約 - 常數定義
【強制】 不允許任何魔法值(即未經預先定義的常數)直接出現在程式碼中。 反例: 1 2 3 //本例中同學 A 定義了緩存的 key,然後緩存提取的同學 B 使用了 Id#taobao 來提取,少了底線,導致故障。 String key =...
-
《阿里Java開發手冊》 | 編程規約 - 命名風格
【強制】 程式碼中的命名均不能以 底線或美元符號 開始,也不能以底線或美元符號結束。 反例: _name / __name / $name / name_ / name$ / name__ 【強制】 程式碼中的命名嚴禁使用拼音與英文混合的方式,更不允許直接使用中文的方...
-
《阿里Java開發手冊》 | 前言、目錄
《Java 開發手冊》是阿里巴巴集團技術團隊的集體智慧結晶和經驗總結,經歷了多次大規模一線實戰的檢驗及不斷完善,公開到業界後,眾多社區開發者踴躍參與,共同打磨完善,系統化地整理成冊。現代軟體行業的高速發展對開發者的綜合素質要求越來越高,因為不僅是編程知識點,其它維度的知識點也會影響到軟體的...
-
Java 8 | Nashorn
Nashorn 是一個 javascript 引擎。 從 JDK 1.8 開始, Nashorn 取代 Rhino ( JDK 1.6 , JDK1.7 )成為 Java 的嵌入式 JavaScript 引擎。 Nashorn 完全支持 ECMAScript 5.1 規範以及一些擴展。它...
-
Java 8 | Base64
在 Java 8 中, Base64 編碼已經成為 Java 類庫的標準。 Java 8 內置了 Base64 編碼的編碼器和解碼器。 Base64 工具類提供了一套靜態方法獲取下面三種Base64編解碼器: 基本:輸出被映射到一組字符 A-Za-z0-9+/ ,編碼不添加任何行標...
-
Java 8 | Date/Time API(JSR 310)
Java 8 引入了新的 Date-Time API(JSR 310) 來改進時間、日期的處理。時間和日期的管理一直是最令 Java 開發者痛苦的問題。 java.util.Date 和後來的 java.util.Calendar 一直沒有解決這個問題(甚至令開發者更加迷茫)。 因為上面這些...