Dieser Titel ist ein wenig schwierig ... Wenn ich eine Schnittstelle schreibe, ist es in der Regel bewährte Methode, die am meisten spezifische Schnittstelle, oder am wenigsten?OO Best Practice in Bezug auf die Rückgabe weniger/spezifischer Schnittstelle bei der Rückgabe einer Schnittstelle
Angenommen,
interface List2<T> extends List<T>
{
List<T> getRange(int startIndex, int endIndex);
}
Wäre es besser, es
interface List2<T> extends List<T>
{
List2<T> getRange(int startIndex, int endIndex);
}
so dass Anrufer auf ihrem Ergebnis getRange
zu
Die Rückkehr der spezifischsten Art gibt Ihnen die größte Zuhörerschaft. Jeder, der IEnumerable möchte, kann IList konsumieren, aber nicht umgekehrt. Daher verstehe ich nicht, warum man den Rückgabetyp später erweitern möchte. – mayu