В Jesse Liberty Programming С# (стр .142) он приводит пример, в котором он передает объект в интерфейс.
interface IStorable
{
...
}
public class Document : IStorable
{
...
}
...
IStorable isDoc = (IStorable) doc;
...
В чем смысл этого, особенно если класс объекта все равно реализует inteface?
EDIT1: Чтобы уточнить, меня интересует причина для приведения (если есть), а не причина для реализации интерфейсов. Кроме того, книга является его первым выпуском 2001 года (на основе С# 1, поэтому пример не может быть родным для более поздних версий С#).
EDIT2: я добавил некоторый контекст в код