0

Thingいくつかの変数を持つクラスがあります。FileHandlerまた、データをログ ファイルに記録するクラスもあります。

はのFileHandlerインスタンス化に固有でThingあり、 のインスタンス変数のいくつかを出力する必要がありますThing。したがって、ThingにインポートされFileHandlerます。

OtherThingも必要な別のクラス がありますFilehadler。残念ながら、 と の性質に特有の理由でインポートされThingます。これは、 importと import が順番に import をインポートすることを意味します。 OtherThingThingOtherThingFileHandlerThingThingOtherThingFileHandler

これらを引き離すことはできないようです。コメントに応じて、この投稿にさらに追加します。ここでクラスを分離できない明らかな理由はありますか? これは、3 つのクラスで必要な共通データがあるためと思われます。

4

1 に答える 1

1

この文言に続いて...

「コンピュータ サイエンスのすべての問題は、別のレベルの間接化によって解決できます。ただし、間接化の層が多すぎるという問題を除けば」【デビッド・ウィーラー】

...インターフェースを追加することをお勧めします。正確なコードを知らなければ、決定するのは困難です。IThing や IFileHandler を導入しようとしているのかもしれません。

于 2013-10-30T16:01:17.313 に答える