Я прочитал в исходном коде .net более конкретно, это источник mscorlib, и я остановился, чтобы посмотреть, как был реализован класс Stream, все как прекрасно, и все до тех пор, пока я не увидел эту строку Код:mscorlib Исходный поток должен вызывать StackOverflowException
public static readonly Stream Null = new NullStream();
А потом я thougth «Так NullStream выводится из потока ждать следует, что не сгенерирует исключение?».
Это то, что прошли мой взгляд: и вот sourcecode путь к потоку является:
Проект-> mscorlib Path => система/Io/stream.cs
Почему 'StackOverflowException'? 'Null' объявляется внутри' Stream' как 'static' (создается один единственный экземпляр), и это даже не вызов ... –
Если он не был статическим: обязательно. Но это так ... Нет –