При использовании явная реализация интерфейса . Вместо
public void Dispose()
{
...
}
было бы
void IDisposable.Dispose()
{
...
}
Различные другие типы делают это; иногда это происходит из-за необходимости (например, поддержка IEnumerable.GetEnumerator
и IEnumerable<T>.GetEnumerator
), а в других случаях необходимо предоставить более подходящий API, когда известен конкретный тип.