title: Why is b always null?
body: <p>I can't seem to set a value on a defined property in a sub class.</p>
  
  <pre><code>export class Parent {
  
      protected a: number = null;
  
      constructor(){
          this.init();
      }
  
      init(){
          this.a = 1;
      }
  }
  </code></pre>
  
  
  
  <pre><code>import {Parent} from './Parent';
  
  export class Child extends Parent {
  
      protected b: number = null;
  
      init(){
          this.a = 1;
          this.b = 2;
      }
  
  
      getB(){
          return [this.a, this.b];
      }
  }
  </code></pre>
  
  
  
  <pre><code>import {Child} from './Child';
  var c = new Child();
  console.log(c.getB());
  </code></pre>
  
  <p><code>getB()</code> returns <code>[1, null]</code>, why doesn't the value get set?</p>