接口及其实现 class 是否应该存在 UML 图中的依赖关系?

Should dependencies in UML diagrams exist for both Interfaces and their implementing class?

假设我有以下 Java 界面。 ModalDrawer 是否依赖于我的 UML class 图中的 modelpanelevel

public interface ModalDrawer {
    void draw(GameEngine model, Pane pane);
    void update(Level level);
}

对我来说,class 实现 ModalDrawer 具有这些依赖性是有意义的,但对接口 ModalDrawer 来说并不是。 中的回复让我对这一点感到困惑。它有以下引用:

An interface isn't necessarily a contract of dependencies, it's a contract of functionality. Any implementation can expose its dependencies via constructor(s).

按照这个逻辑,我的问题的答案是"no"吗?

是的。 ModalDrawer 使用 GameEngine、Pane 和 Level 来定义它的参数,因此它依赖于这三个 类,因为如果没有它们的存在,它就会有未定义的参数类型。