这是否形成循环依赖?

问题描述 投票:0回答:1

我正在开发一个国际象棋程序,目前正在重构一些类,并且想知道以下内容是否正在创建循环依赖项。

A 类依赖于 B 类和 C 类,C 类依赖于 B 类。

答:

public class MoveValidatorHandler  {
    private PositionHandler positionHandler;
    private CheckMovementHandler checkMovementHandler;

    public MoveValidatorHandler(PositionHandler positionHandler,CheckMovementHandler checkMovementHandler){
        this.positionHandler = positionHandler;
        this.checkMovementHandler = checkMovementHandler;
    }

乙:

public class PositionHandler {
// this one only contains methods
}

C:

public class CheckMovementHandler {
   
    private PositionHandler positionHandler;

    public CheckMovementHandler(PositionHandler positionHandler){
        this.positionHandler = positionHandler;
    }
java object oop object-oriented-analysis
1个回答
0
投票

对于像这样的情况,当您绘制有向图的图像时会变得容易得多,并且如果 A 依赖于 B,则有一条从 A 到 B 的有向线:)。

如果你可以沿着箭头找到一个循环,那么就存在循环依赖。

Class dependency graph

© www.soinside.com 2019 - 2024. All rights reserved.