title: How can a class have no constructor?
body: <p>A while back I asked about instantiating a HttpContext object. Now that I have learnt what I didn't know, what confuses me is that you cannot say HttpContext ctx = new HttpContext(); because the object does not have a constructor.</p>
  
  <p>But doesn't every class need a constructor? In C#, if you don't provide one, the compiler automatically provides a default cstr for you.</p>
  
  <p>Also, if I have a string (example: "Hello There!") and I say Convert.ToBoolean("Hello"), or any string, how does this work? What happens behind the scenes? I guess a book like CLR Via C# would be handy in this case.</p>
  
  <p>What am I missing?</p>