Collection和Stream之间有什么关系

Rui*_*Rui 6 uml java-8

还有Stream,可以从被检索Collection,在Java的8,那就是public default stream<E> Collection.stream().所以我想用UML 来表达StreamCollection实践之间的关系.

我认为正确的关系是依赖性.但我不确定.所以我想知道UML 之间Collection和之间的正确关系是什么Stream?如果是这样,依赖的原则是什么?

Chr*_*phe 6

所述CollectionE是一种聚集体,它提供了一种方法stream(),它返回一个StreamE,其使用收集作为源.

因此,关系是相当复杂的:有一个<<create>>从依赖CollectionStream.但在同一时间,有一个潜在的通航协会StreamCollection,虽然这不是外界可见.顺便说一下,你可以使用可模板元素来表示两者.

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

在此输入图像描述

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