title: C# object initialization options
body: <p>Doesn't object initialization outside of a constructor break encapsulation ?</p>
  
  <p>Given:</p>
  
  <pre><code>class MyClass 
  {  
      public string _aString;  
  }
  </code></pre>
  
  <p>Shouldn't the _aString member be private and instantiated via a call to the constructor (constructor omitted here):</p>
  
  <pre><code> MyClass test = new MyClass("test");
  </code></pre>
  
  <p>Instead of the alternate method of object initialization:</p>
  
  <pre><code>MyClass test = new MyClass { _aString = "Test" };
  </code></pre>