1

私はこの事件を理解しようとしています。

の戻り値の型を持つメソッドが必要だとしましょうList<T>

public List<T> GetAllItems(string category)
{ ... }

代わりにこのヘッダーを使用するようにアドバイスされました:

public IList<T> GetAllItems(string category)
{ ... }

なんでそうなの?

私はいくつかの調査を行いました.1つの答えは柔軟性であり、同じインターフェースを実装している場合は型を変更できるということです。しかし、変更を防ぐためだけにインターフェイスを公開して何かをしなければならないという動機 (?) は、よくわかりませんでした。繰り返しますが、なぜIList代わりに戻る方が良いのListでしょうか?

4

0 に答える 0