Collection和Stream之间有什么关系

时间:2017-11-26 20:38:09

标签: java-8 uml

Stream可以从Collection检索 Java 8 ,即public default stream<E> Collection.stream()。所以我想用UML来表达StreamCollection之间的关系。

我认为正确的关系是依赖。但我不确定。所以我想知道在{UML 方面CollectionStream之间的正确关系是什么?如果是这样依赖的原则是什么

1 个答案:

答案 0 :(得分:6)

Collection的{​​{1}}是一个聚合,它提供了一个方法E,它返回stream() StreamE,它使用了集合{{ 3}}。

因此关系相当复杂:从CollectionStream存在as source依赖关系。但与此同时,从StreamCollection可能会导航<<create>>,但这对外界来说并不明显。顺便说一下,你可以使用association代表两者。

所以你理论上可以有这样的东西:

templateable element

但请注意,实际上您应该省略流和集合之间的关联,因为它不适用于外部世界。如果您对Java类库的内部设计感兴趣,那么这才有意义。你最好对<<create>>约束进行评论,用简单的语言解释一个用作另一个的源。