循环依赖:为什么这些类不可耦合



我有一个类,Thing,它有许多变量。我还有一个类,FileHandler,将数据记录到日志文件中。

FileHandler特定于Thing的实例化,需要打印Thing的几个实例变量。因此,Thing被导入FileHandler.

还有另一个类,OtherThing,也需要Filehadler。不幸的是,Thing进口OtherThing是出于ThingOtherThing性质的特定原因。这意味着FileHandler进口ThingThing进口OtherThing进口又FileHandler

我似乎无法将它们分开。我会根据评论向这篇文章添加更多内容。有什么明显的原因让我不能在这里分开我的班级吗?这似乎是由于存在三个类需要的共同数据。

按照这个措辞...

"计算机科学中的所有问题都可以通过另一个层次的间接来解决......除了间接层太多的问题。[大卫·惠勒]

。我建议添加一个接口。不知道确切的代码,很难决定。也许你尝试引入IThing或IFileHandler。

最新更新