Java 类之间相互依赖

Pau*_*uli 3 java oop

我正在学习 Play 框架。我对代表仓库库存项目产品数据模型的三个类感到困惑:

public class Product {
  public Long ean; 
  public String name;
  public String description;
  public String toString() {
    return name;
  }
}

public class Warehouse {
  public String name;
  public List<StockItem> stock = new ArrayList<>(); 
  public String toString() {
    return name;
  }
}

public class StockItem {
  public Warehouse warehouse; 
  public Product product; 
  public Long quantity;
  public String toString() {
    return String.format("%d %s", quantity, product);
  }
}
Run Code Online (Sandbox Code Playgroud)

Warehouse取决于类StockItemStockItem类取决于ProductWarehouse类。

如何理解这种关系呢?

Nik*_*zov 5

Warehouse是一个容器类,它有很多项 - StockItem。所以Warehouse知道StockItem并且每个人都StockItem知道Warehouse它属于什么。
就像是:

Warehouse warehouse = new Warehouse();
StockItem item1 = new StockItem();
item1.warehouse = warehouse;
warehouse.stock.add(item1);
Run Code Online (Sandbox Code Playgroud)