I have a class, Thing, which has a number of variables. I also have a class, FileHandler, which records data to log files.
The FileHandler is specific to the instantiation of a Thing and needs to print several of the instance variables of Thing. So, Thing is imported into FileHandler.
There is another class, OtherThing, which also needs a Filehadler. Unfortunately, Thing imports OtherThing for reasons specific to the nature of Thing and OtherThing. This means that FileHandler imports Thing and Thing imports OtherThing which in turn imports FileHandler.
I can't seem to pull these apart. I will add more to this post depending on the comments. Is there an obvious reason that I cannot separate my classes here? It seems to be due to the fact that there is common data, that is needed by three classes.
Thing,OtherThing, andFileHandler. The problem may be language-agnostic from a design point of view, but it will be easier to provide suggestions with a concrete example.