我看网上的java集合框架图 Map 跟Collection之间是一条虚线带箭头连过去的
上面还写着Produces,搞得我有点晕啊
Collection跟Map确实没什么关系,图中想表达的意思是可以通过Map生成Collection.比如:Map可以返回其所有键组成的Set和其所有值组成的Collection,或其键值对组成的Set.
用带箭头的虚线,表示类之间的依赖关系: 由依赖的一方指向被依赖的一方。
这里的意思是Map依赖Collection,它是Collection的一种实现。
都是集合,collection又分为set、list和queue三种,加上map就是常见的四大集合
两个不同的借口 看文档
两者结构上就有区别,没有特定的联系,但是可以交互使用!
虚线在UML建模的类图中是依赖关系的,可以跟踪下jdk源码,而且也没有必要太纠结。
UML中的依赖关系。
1.从代码上看是没有什么关系(extends、implements)。
2.用带箭头的虚线表示有一定的关系,用带箭头的虚线+Produces是Map可以产生Collection或与Collection相关的东西。
3.用带箭头的虚线+Produces是Map可以产生Collection或与Collection相关的东西是通过 Map.keySet()、Map.entrySet()、Map.values()后产生与Collection有关的联系。