title: Why is new Enquue not being called?
body: <p>I am working on a .NET framework version, which does not have ConcurrentQueue support.
  I wrote a simple class, which inherits from Generic.Queue and does a lock as shown below.
  When I call my own implementation of ConcurrentQueue's Enqueue method, I don't see it being called
  at all and its generic version that is being called. What am I doing wrong?</p>
  
  <pre><code>public class ConcurrentQueue&lt;T&gt; : Queue&lt;T&gt;
  {
      private Object thisLock = new Object();
      new void Enqueue(T obj)
      {
          lock (thisLock)
          {
               base.Enqueue(obj);
          }
      }
      new T Dequeue()
      {
          lock (thisLock)
          {
               return base.Dequeue();
          }
      }
  }
  
  public partial class Form1 : Form
  {
      public Form1()
      {
          InitializeComponent();
          int i = 5;
          ConcurrentQueue&lt;int&gt; cc = new ConcurrentQueue&lt;int&gt;();
          cc.Enqueue(i);
  
      }
  }
  </code></pre>