Java 在UML图中,接口及其实现类是否都存在依赖关系?
假设我有以下Java接口。Java 在UML图中,接口及其实现类是否都存在依赖关系?,java,dependencies,uml,Java,Dependencies,Uml,假设我有以下Java接口。ModalDrawer是否依赖于UML类图中的模型、窗格和级别 public interface ModalDrawer { void draw(GameEngine model, Pane pane); void update(Level level); } 对我来说,类实现ModalDrawer具有这些依赖关系是有意义的,但对于接口ModalDrawer,则没有意义。我对这一点的困惑因这篇文章的回应而加剧。其引述如下: 接口不一定是依赖关系的契约,
ModalDrawer
是否依赖于UML类图中的模型
、窗格
和级别
public interface ModalDrawer {
void draw(GameEngine model, Pane pane);
void update(Level level);
}
对我来说,类实现ModalDrawer
具有这些依赖关系是有意义的,但对于接口ModalDrawer
,则没有意义。我对这一点的困惑因这篇文章的回应而加剧。其引述如下:
接口不一定是依赖关系的契约,它是
功能契约。任何实现都可以公开其
通过构造函数的依赖关系
按照这个逻辑,我的问题的答案是“否”?是的。ModalDrawer使用GameEngine、Pane和Level来定义其参数,因此它依赖于这三个类,因为如果没有它们,它将具有未定义的参数类型。请确保绘制类图或…?是的,我指的是UML类图,如果您有
ModelDrawer
的实现,依赖关系应该从实现
到游戏引擎
的接口
(如果存在),这符合设计模式的依赖倒置原则。此外,考虑一个具有多个接口的类。