public DifferentConstructors(IFirstInterface firstInterface, ISecondInterface secondInterface) { if(firstInterface == null) throw new ArgumentNullException("firstInterface"); if(secondInterface == null) throw new ArgumentNullException("secondInterface"); this._firstInterface = firstInterface; this._secondInterface = secondInterface; }
public DifferentConstructors(IFirstInterface firstInterface) : this(firstInterface, SecondClass.Instance) { }
static void Foo(IFirstInterface firstInterface) // Передаём параметром обьект типа (или ссылку) IFirstInterface, по этому вызывается именно его реализация { firstInterface.Action(); // Вызываем метод Action() у обьекта типа IFirstInterface }