JDK原始碼中的英文註釋翻譯(Enum<E extends Enum<E>>)
public abstract class Enum<E extends Enum<E>> implements Comparable<E>, Serializable
列舉類存在於java.lang包中,是一個抽象類,實現了Comparable<E>和Serializable介面,說明,列舉例項可以進行比較,實現Seriaalizable介面的目的是在反序列化時不會重新建立一個新的物件。
Enum是所有java程式中定義的列舉類的公共基類,更多關於列舉的資訊(包括編譯器自動隱式生成的方法),可以在 8.9 of The Java™ Language Specification
當時用列舉作為Set的元素和Map的鍵時,可以實現一個專用的高效實現(java.util.EnumSet,java.util.EnumMap)
相關推薦
JDK原始碼中的英文註釋翻譯(Enum<E extends Enum<E>>)
public abstract class Enum<E extends Enum<E>> implements Comparable<E>, Serializable 列舉類存在於java.lang包中,是一個抽象類,實現了Comparabl
JDK原始碼-HashMap-remove方法(JDK7和JDK8)
remove方法原始碼相應簡單很多 測試程式碼 /** * 測試remove操作的區別 */ @Test public void remove(){ HashMap<String, String> map = new HashMap();
JDK原始碼-HashMap-put方法(JDK7和JDK8)
下面是對HashMap中put方法的原始碼進行註釋 測試程式碼 /** * 測試put操作的區別 */ @Test public void put(){ HashMap<String, String&
[原][譯]JSBSim官方原始碼文件翻譯(google翻譯)
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% CLASS DOCUMENTATION %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
jdk原始碼閱讀之HashMap(二)
HashMap的遍歷 HashMap對應有三種遍歷方式,分別是條目遍歷(可理解為節點遍歷)、鍵遍歷、值遍歷. //遍歷鍵的迭代器 final class KeyIterator extends HashIterator implements Iterator<K
jdk原始碼閱讀之HashMap(一)
HashMap是一個散列表,這個散列表包含的雜湊桶的格式為2^n個,而且必須滿足這個條件,原因在getNode(int hash, Object key)這個方法的分析中給出。HashMap允許null的鍵值對,null的鍵值對總會被對映到第一個雜湊桶中。HashMap裡面的鍵值對並沒有順序
JDK原始碼分析之ArrayList(二)
ArrayList原始碼分析(二) 這裡是ArrayList的第二部分,介紹remove、clear、sublist、trimToSize、iterator、toArray等方法。 (多看看原始碼有利於對集合類使用的理解~) remove方法 根
《Oracle PL/SQL開發指南》學習筆記30——原始碼除錯——錯誤管理(第四部分,utl_call_stack包中的函式)
utl_call_stack包中的函式整理如下: Package Function Description backtrace_depth Returns the number of backtrace items in
jdk8原始碼解析第一天(簡化版,只記自己理解的要點)
1.String類: 實現了serilizable,comparable介面,seriliazable僅用於標誌,comparable的comparableTo方法用於比較字串大小。 底層是通過final char[] 實現字串的,其所有方法均是用字元陣列相關方法實現的。
C語言註釋風格(函式、功能、輸入、輸出、返回)
C語言程式設計規範-註釋規則: 1:一般情況下,源程式有效註釋量必須在20%以上。 說明:註釋的原則是有助於對程式的閱讀理解,在該加的地方都加了,註釋不宜太多也不能太少,註釋語言必須準確、易懂、簡潔。 2:說明性檔案(如標頭檔案.h檔案、.inc檔案、.def檔案、
SpringBoot原始碼學習之路(七、SpringBoot中對SpringMVC的自動配置)
SpringMVC自動配置 一. Spring MVC auto-configuration 對於SpringMVC的自動配置下面只是介紹了部分,如果想要了解更多Boot對SpringMVC的預設配置可以查閱原始碼結合官方文件瞭解。 原始
<T extends Comparable<? super T>>
tool start ted tools 源代碼 static 了解 -m ron 在看Collections源代碼中,看到如下代碼: [java] view plain copy public static <T extends Comparable&
設計模式(一):單例模式 JVM類載入機制 JDK原始碼學習筆記——Enum列舉使用及原理 Java併發(七):雙重檢驗鎖定DCL Java併發(二):Java記憶體模型 Java併發(二):Java記憶體模型 Java併發(七):雙重檢驗鎖定DCL JDK原始碼學習筆記——Enum列舉使用及原理
單例模式是一種常用的軟體設計模式,其定義是單例物件的類只能允許一個例項存在。 單例模式一般體現在類宣告中,單例的類負責建立自己的物件,同時確保只有單個物件被建立。這個類提供了一種訪問其唯一的物件的方式,可以直接訪問,不需要例項化該類的物件。 適用場合: 需要頻繁的進行建立和銷燬的物件; 建立物
jdk原始碼分析(1)java.lang.Object
java.lang.Object原始碼分析 public final native Class<?> getClass() public native int hashCode(); public boolean e
JDK原始碼解讀(第五彈:Integer之toString方法)
上一篇只講了Integer的幾個屬性,這一次我們來看一下toString方法。 toString總共有3個過載,先來看兩個引數的toStirng方法: public static String toString(int i, int radix) {
物聯網-wemos D1 Mini (esp8266)實驗二 --- 蜂鳴器版失物尋找 附完整原始碼和註釋
#include <ESP8266WiFi.h> #include <ESP8266WebServer.h> //HTML主頁mainPage static const char mainPage[] PROGMEM = u8R"( &l
(一)jdk原始碼分析之collection,List,Set
前言 標題取得有點大,一口氣分析三塊的原始碼,看上去是個很大的話題,不過在個人看來,一方面,這三個都是介面,不涉及程式碼實現,讀起來比較快,另一方面,大家都知道List,Set這兩個介面都繼承自collection,他們之間存在關聯,所以放在一塊分析討論最能凸顯,這三塊介面
JDK原始碼分析(3)HashSet
HashSet HashSet簡介 HashSet特點 非執行緒安全 允許null值 新增值得時候會先獲取物件的hashCode方法,如果hashCode 方法返回的值一致,則再呼叫equals方法判斷是否一致,如果不一致才add元素。 注意: 對於HashS
JDK原始碼分析(4)HashMap
JDK版本 HashMap簡介 HashMap基於雜湊表的 Map 介面的實現。此實現提供所有可選的對映操作,並允許使用 null 值和 null 鍵。(除了不同步和允許使用 null 之外,HashMap 類與 Hashtable 大致相同。)此類不保證對映
jdk原始碼分析(四)——垃圾收集器與記憶體分配策略
本章介紹的垃圾收集器與記憶體分配策略主要就三點。 第一點:垃圾收集(垃圾回收)。問題:哪些記憶體需要回收?什麼時候回收?如何回收? 第二點:介紹垃圾收集器。問題:有幾種型別是垃圾收集器?根據第一點的介紹,屬於那種型別的? 第三點:記憶體分配。問題:怎麼分配的? 一、垃