l 介面:用來明確所有集合中該具有的功能,相當於在定義集合功能標準;
l 抽象類:把多個集合中功能實現方式相同的方法,抽取到抽象類實現,具體集合不再遍寫,繼承使用即可;
具體類:繼承抽象類,實現介面,重寫所有抽象方法,達到具備指定功能的集合。每個具體集合類,根據自身的資料儲存結構方式,對介面中的功能方法,進行不同方式的實現
---|collection: 單列集合
---|list: 有儲存順序, 可重複
---|arraylist: 陣列實現, 查詢快, 增刪慢
由於是陣列實現, 在增和刪的時候會牽扯到陣列
增容, 以及拷貝元素. 所以慢。陣列是可以直接
按索引查詢, 所以查詢時較快
---|linkedlist: 鍊錶實現, 增刪快, 查詢慢
由於鍊錶實現, 增加時只要讓前乙個元素記住自
己就可以, 刪除時讓前乙個元素記住後乙個元
素, 後乙個元素記住前乙個元素. 這樣的增刪效
率較高但查詢時需要乙個乙個的遍歷, 所以效率
較低 ---|vector: 和arraylist原理相同, 但執行緒安全, 效率略低
和arraylist實現方式相同, 但考慮了執行緒安全問
題, 所以效率略低
---|set: 無儲存順序, 不可重複
---|hashset
---|treeset
---|linkedhashset
---| map: 鍵值對
---|hashmap
---|treemap
---|hashtable
---|linkedhashmap
集合的繼承體系
collection下面有兩個常用的子類介面,乙個是list 有序存放可重複的元素 set 存放不可重複的元素 list介面下有三個常用的子類 arraylist 底層結構是陣列,查詢快,增刪慢,執行緒不安全,效率高 vector 底層結構是陣列,查詢和增刪慢,執行緒安全,效率低 在多執行緒環境中選...
go物件導向思想 封裝 繼承 多型
go 如何實現的封裝 繼承 和多型 封裝 go中是通過結構體的方法去模擬類 package objects 通過結構體的方式去模擬類 type user struct 根據方法的首字母的大小寫去判斷是否外部訪問 func user user getbike string 繼承 我們編寫乙個使用者資訊...
物件導向的思想
物件導向的好處 1.物件導向是一種更符合人們思考習慣的一種思想 2.面向過程的更多體現是執行者 物件導向更多體現的是指揮者 3.有了物件導向這個事情後 複雜問題就簡單化了 大西瓜如何用挖掘機炒菜?幾個事物 2事物 大西瓜 name age 屬性 行為 會開挖掘機 挖掘機 color lunzi 翻炒...