title: Does C# have the notion of private and protected inheritance?
body: <p>Does C# have the notion of private / protected inheritance, and if not, why?</p>
  
  <p><strong>C++</strong></p>
  
  <pre>
  <code>
  class Foo : private Bar {
   public:
     ...
   }; 
  </code>
  </pre>
  
  <p><strong>C#</strong></p>
  
  <pre>
  <code>
  public abstract NServlet class : private System.Web.UI.Page
  {
      // error "type expected"
  }
  </code>
  </pre>
  
  <p>I am implementing a "servlet like" concept in an .aspx page and I don't want the concrete class to have the ability to see the internals of the System.Web.UI.Page base.</p>