title: Why can the static class Tuple in .NET Framework 4.0 have new keyword to create instances?
body: <p><a href="http://msdn.microsoft.com/en-us/library/79b3xss3.aspx" rel="nofollow">Static Classes and Static Class Members</a></p>
  
  <p>In this link  Microsoft says,</p>
  
  <blockquote>
    <p>a static class cannot be instantiated. In other words, you cannot use the new keyword to create a variable of the class type. Because there is no instance variable, you access the members of a static class by using the class name itself.</p>
  </blockquote>
  
  <p>I learned static class the same as stated above. But for the <a href="http://msdn.microsoft.com/en-us/library/system.tuple.aspx" rel="nofollow">static class Tuple</a> introduced in .NET Framework 4 can have new keyword to create a Tuple.</p>
  
  <blockquote>
    <p>var population = new Tuple(
                               "New York", 7891957, 7781984, 
                               7894862, 7071639, 7322564, 8008278);</p>
  </blockquote>
  
  <p><a href="http://msdn.microsoft.com/en-us/library/dd383325.aspx#snippetGroup2" rel="nofollow">Another example</a></p>
  
  <p>Can anyone explain how is that possible? </p>