5

インターフェイスとそれを実装するクラスがあります。今、私はこのクラスにいくつかのもののコレクションを保持したいと思います。Sholudインターフェイス部分でICollectionを使用し、concereteクラス部分でCollectionを使用しますか?

両方の部分でICollectionを使用する方が、より適切で柔軟性がありますか?

また、私がクラスにそれらのコレクションを保持したいと言った「もの」は、私が持っている他のいくつかのクラスのオブジェクトでもあり、それらのクラスにも独自のインターフェースがあります。それで、最高の実践は何ですか?これらのクラスをコレクションに保存する場合は、これらのクラスのインターフェイスタイプを使用する必要がありますか?

4

1 に答える 1

2

クラスではなくインターフェイスを公開できる場合は、インターフェイスを公開します。インターフェイスで使用できないメソッドを公開する場合など、必要な場合にのみクラスを公開してください。インターフェイスとクラスの両方で行う必要があります。

理論的根拠は、情報隠蔽は「良いこと」であるため、一般性を失うことなくそれを行うことができる場合は、そうする必要があります。

于 2012-08-08T02:19:53.150 に答える