Liskov Substitutionsprinzip und Streams

Tut die Tatsache, dass es gibtStrom abgeleitete Klassen, die nicht geschrieben oder gesucht werden können, verstoßen gegen das Liskov-Substitutionsprinzip?

Zum Beispiel dieNetworkStream kann nicht gesucht werden, es wird ein werfenNotSupportedException wenn die MethodeSeek wird genannt.

Oder weil die Existenz vonCanSeek Flagge ist es in Ordnung?

In Anbetracht des bekannten Beispiels vonSquare erben vonRectangle... würde die Hinzufügung der FahnenDoesHeightAffectsWidth undDoesWidthAffectsHeight zuRectangle das Problem beheben?

Öffnet dies nicht die Tür zum Reparieren von Dingen durch Hinzufügen von Flaggen?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage