【发布时间】:2019-10-24 20:23:34
【问题描述】:
Java-API 告诉我特定类实现了哪些接口。 但是有两种不同类型的信息,我不太确定这意味着什么。例如对于“TreeSet”类:https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/TreeSet.html 有以下信息:
All Implemented Interfaces:
Serializable, Cloneable, Iterable<E>, Collection<E>, NavigableSet<E>, Set<E>, SortedSet<E>
还有:
public class TreeSet<E>
extends AbstractSet<E>
implements NavigableSet<E>, Cloneable, Serializable
现在,在“实现”下列出的接口比在“所有实现的接口”下少。这是什么意思?
进一步:假设我想绘制一个 UML 图,它指定 Treeset 与 Set 和 Collection 之间的关系。我假设 Treeset 实现了 Set 和 Collection (因为 API 是这么说的,但它没有列在实现下,这让我有点困惑......?)。但同时Set也是Collection的一个子接口。那么绘制指示两个接口之间关系的箭头是否足够,而不是一个箭头来指示 TreeSet 实现了 Set(但没有指向 Collection 的箭头),或者我是否需要绘制一个指示 TreeSet 也实现 Collection 的箭头? /p>
对不起我的英语。我希望我的问题可以理解。
【问题讨论】:
-
你不会在 TreeSet 和 Collection 之间画箭头;这是从 Set 是一个集合这一事实推断出来的。
标签: java interface uml implements