C# - What is the reason for "Explicitly implemented interface members are always implicitly private ?"
<p>When i need to implement the interface member explicitly ,it is private.</p>

<p>for example :</p>

<pre><code> // when explicit implementation it is always private
  void IPointy.Draw( )

  {

  }
</code></pre>

<p>why such design rule is enforced ?</p>

<p>Note :</p>

<p>When two interfaces having same methods ,to avoid the clash i have to explicitly implement is as</p>

<pre><code>class Line :IPointy
{

       // Now it is private    
       void IPointy.Draw( )

      {


      }

}
</code></pre>

<p>My question is the reason for implementing is as private.</p>
