国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
一名合格java開發(fā)者所需要了解的幾個框架

Java 2(jdk1.2)平臺包含一個集合框架。 集合是表示一組對象的對象(如經(jīng)典的Vector類)。 集合框架是用于表示和操作集合的統(tǒng)一體系結構,允許獨立于其表示的細節(jié)操縱集合。

一個集合框架的主要優(yōu)點(官方直譯)是:

1.通過提供有用的數(shù)據(jù)結構和算法來減少編程工作量,因此您不必親自編寫它們。

2.通過提供有用的數(shù)據(jù)結構和算法的高性能實現(xiàn)來提高性能。 由于每個接口的各種實現(xiàn)都是可以互換的,程序可3.以通過切換實現(xiàn)來輕松調(diào)整。

4.通過建立通用語言來回傳遞集合,提供不相關的API之間的互操作性。

5.通過消除學習多個臨時收集API的需要,減少了學習API所需的工作量。

6.通過消除生成臨時集合API的需求,減少設計和實現(xiàn)API所需的工作量。

7.通過為集合和算法提供標準接口來操縱它們,促進軟件重用。

程序員的大白話如下:

1.降低編程難度提高程序性能

2.提高API間的互操作性

3.降低學習難度

4.降低設計和實現(xiàn)相關API的難度

5.增加程序的重用性

注意: Java容器里只能放對象,對于基本類型(int, long, float, double等),需要將其包裝成對象類型后(Integer, Long, Float, Double等)才能放到容器里。很多時候拆包裝和解包裝能夠自動完成。這雖然會導致額外的性能和空間開銷,但簡化了設計和編程。

集合框架包括:

集合接口 - 表示集合的不同類型,例如set,list 和map。這些接口構成了框架的基礎。

通用實現(xiàn) - 集合接口的主要實現(xiàn)。

傳統(tǒng)實現(xiàn) - 早期版本Vector和Hashtable中的集合類已經(jīng)過改進以實現(xiàn)集合接口。

特殊目的實現(xiàn) - 為在特殊情況下使用而設計的實現(xiàn)。這些實現(xiàn)顯示非標準的性能特征,使用限制或行為。

并發(fā)實現(xiàn) - 為高度并發(fā)使用而設計的實現(xiàn)。

包裝器實現(xiàn) - 為其他實現(xiàn)添加功能,例如同步。

便利實現(xiàn) - 集合接口的高性能“微型實現(xiàn)”。

抽象實現(xiàn) - 部分實現(xiàn)集合接口以促進自定義實現(xiàn)。

算法 - 對集合執(zhí)行有用功能的靜態(tài)方法,例如排序列表。

基礎架構 - 為集合接口提供重要支持的接口。

陣列實用程序 - 基元和參考對象數(shù)組的實用程序函數(shù)。嚴格來說,并不是Collections Framework的一部分,這個功能同時被添加到Java平臺,并依賴于相同的基礎架構。

泛型(Generics)

java集合框架經(jīng)常和泛型聯(lián)系在一起使用,可謂是誰也離不開誰,Java容器能夠容納任何類型的對象,這一點表面上是通過泛型機制完成,Java泛型不是什么神奇的東西,只是編譯器為我們提供的一個“語法糖”,泛型本身并不需要Java虛擬機的支持,只需要在編譯階段做一下簡單的字符串替換即可。實質(zhì)上Java的單繼承機制才是保證這一特性的根本,因為所有的對象都是Object的子類,容器里只要能夠存放Object對象就行了。

事實上,所有容器的內(nèi)部存放的都是Object對象,泛型機制只是簡化了編程,由編譯器自動幫我們完成了強制類型轉(zhuǎn)換而已。JDK 1.4以及之前版本不支持泛型,類型轉(zhuǎn)換需要程序員顯式完成。

語法糖

Java語法糖系列,所以首先講講什么是語法糖。語法糖是一種幾乎每種語言或多或少都提供過的一些方便程序員開發(fā)代碼的語法,它只是編譯器實現(xiàn)的一些小把戲罷了,編譯期間以特定的字節(jié)碼或者特定的方式對這些語法做一些處理,開發(fā)者就可以直接方便地使用了。這些語法糖雖然不會提供實質(zhì)性的功能改進,但是它們或能提高性能、或能提升語法的嚴謹性、或能減少編碼出錯的機會。Java提供給了用戶大量的語法糖,比如泛型、自動裝箱、自動拆箱、foreach循環(huán)、變長參數(shù)、內(nèi)部類、枚舉類、斷言(assert)等

java集合框架十四大接口

為了規(guī)范容器的行為,統(tǒng)一設計,JCF定義了14種容器接口(collection interfaces),它們的關系如下圖所示:

Map接口沒有繼承自Collection接口,因為Map表示的是關聯(lián)式容器而不是集合。但Java為我們提供了從Map轉(zhuǎn)換到Collection的方法,可以方便的將Map切換到集合視圖。

上圖中提供了Queue接口,卻沒有Stack,這是因為Stack的功能已被JDK 1.6引入的Deque取代。

接口實現(xiàn)

上述接口的通用實現(xiàn)見下表:

本站僅提供存儲服務,所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
再見了SpringMVC,這個框架有點厲害,甚至干掉了Servlet!
Java的21個技術點和知識點歸納
Map是不是集合?
JAVA別跑“等等”筒子們
推薦一款基于 SpringBoot 的接口快速開發(fā)框架
spring中的AOP與IOC
更多類似文章 >>
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服