New-ing string types
<p>From <a href="http://www.apress.com/9781590598849/" rel="nofollow">Pro C#</a> </p>

<p>Referring to "New-ing" Intrinsic data types...</p>

<blockquote>
  <p>All intrinsic data types support what is known as a default constructor.  It allows you to create a variable using the new keyword.</p>
  
  <p>[...] Object references (including strings) are set to null.</p>
</blockquote>

<p>In C#, strings do not have a public default constructor.  My guess is that due to string's immutability, they have a private default constructor.  But, the context here is talking about Object references and string's as a whole while using <code>new</code>.</p>

<p>Because one cannot do</p>

<p><code>String myString = new String();</code></p>

<p>So,</p>

<p><code>String a;</code></p>

<p>referencing string doesn't result in a "default value".  Instead, it's a compiler error to access a.</p>

<p>Though</p>

<pre><code>public class StringContainer
{
    public static string myString { get; set; }
}
</code></pre>

<p>Results in a legally accessible string (defaulted to null).  This doesn't use <code>new</code>.  It performs some kind of magical construction.  </p>

<p>What is occurring in the <code>StringContainer</code> scenerio?  Because there appears to be no new-able default constructor in string, is this an error in the C# book?</p>
