剛開始學java的時候,分不清Collection
和Collections
,其實這兩個東西是完全不一樣的東西。
- Collection是一個接口,是java集合中的頂級接口之一,衍生出了java集合的龐大的體系。下面的圖可以說明:
繼承Collection
的子類關係如下:
既然Collection
是接口,那麼它本身就是不可以實例化的,它的子類或者實現類是可以的。【java集合梳理】— Collection接口詳解
- 而
Collections
則是工具類,是java集合中常用的方法的一個小小彙總,覆蓋了排序,搜索,線程安全之類的一些算法,裏面基本都是靜態方法,可以直接用類名調用。具體源碼解析看這個:【java集合梳理】— Collections接口源碼解析
兩個東西相同之處,大概是都是和集合相關的,而Collections
感覺名字起得不太好,應該改成CollectionUtils
,一目瞭然😂😂😂(開個玩笑)