understanding ICollection implementation and interfaces
<p>I am familiar with the fact that an interface contains only the signatures of methods, delegates or events. The implementation of the methods is done in the class that implements the interface. the class that implements the interface MUST implement its methods.</p>

<p>I created a generic List. when i browse into the declaration of List, i see that it inherits ICollection, and ICollection has a signature method of: object SyncRoot { get; }
why don't i see the SyncRoot implementation in List class?</p>

<pre><code>public class List&lt;T&gt; : IList&lt;T&gt;, ICollection&lt;T&gt;, IEnumerable&lt;T&gt;,
                       IList, ICollection, IEnumerable
{
    public List();
    public List(IEnumerable&lt;T&gt; collection);
    public List(int capacity);
}
</code></pre>

<p>I expect to see: <code>public object syncRoot()</code> in the above? Also, if i open it with JustDecompile (Telerik) I see that it is implemented but as <code>private</code>. Am i missing anything?</p>
