How can an interface method be called directly?
<p>I'm reading some code, can you please explain what the below line does?</p>

<pre><code>bool isFeatureEnabled = FeatureControl.Current.Features.AppDesigner.IsEnabled(organizationId,currentOrgDBVersion);
</code></pre>

<p>Here's the definitions of the above code</p>

<pre><code>public sealed class FeatureControl : IFeatureControl
{
    public static IFeatureControl Current { get; }
    [XmlIgnore]
    public IFeatureDetailContainer Features { get; set; }
    ....
}


public interface IFeatureControl
{
    IFeatureDetailContainer Features { get; set; }
    ...
}


public interface IFeatureDetailContainer
{
    IFeatureDetail AppDesigner { get; }
}

public interface IFeatureDetail
{
    bool IsEnabled(Guid organizationId, Version currentOrgDBVersion);
}
</code></pre>

<p>I don't see any instances created, how does this work?</p>

<p>Sorry, I copied metadata, I just found the actual code:</p>

<pre><code>public sealed class FeatureControl : IFeatureControl
{

    private static readonly Lazy&lt;IFeatureControl&gt; current = new Lazy&lt;IFeatureControl&gt;(() =&gt; new FeatureControl());
    private IFeatureDetailContainer features;
    public static IFeatureControl Current
        {
            get
            {
                return current.Value;
            }
        }

    /// &lt;summary&gt;
        /// Accessor to the Features List for Developers to retrieve the information
        /// &lt;/summary&gt;
        [XmlIgnore]
        public IFeatureDetailContainer Features
        {
            get
            {
                return this.features;
            }
            set
            {
                this.features = value;
            }
        }
}
</code></pre>