title: Extending abstract class gives strange error while accessing variables
body: <p>So guys I have this basic structure :</p>
  
  <pre><code>interface IModule {
      public function _prepareActionObj ();
  }
  
  abstract class Module implements IModule {
  
      private $_action = null,
  
              $_actionObj = null,
  
              $_actionHandlers = array();
  
      public function __construct() {
          $this-&gt;_action = GetParamDefault('action', '');
          $this-&gt;_prepareActionObj();
      }
  
      private function _prepareActionObj () {
          $this-&gt;_actionObj = new $this-&gt;_actionHandlers[$this-&gt;_action]();
      }
  
  }
  </code></pre>
  
  <p>So far nothing strange. But when I do this :</p>
  
  <pre><code> class AdminHomeModule extends Module {
       private
           $_actionHandlers = array(
               '' =&gt; 'AdminModuleHomeAction'
           );
   }
  </code></pre>
  
  <p>and create new instance of AdminHomeModule I get this error </p>
  
  <pre><code>Undefined index: on line 22 in ....\interfaces\IModule.php
  </code></pre>
  
  <p>wich is exacly</p>
  
  <pre><code>$this-&gt;_actionObj = new $this-&gt;_actionHandlers[$this-&gt;_action]();
  </code></pre>
  
  <p>When I dump $this in Module constructor I get this</p>
  
  <pre><code>AdminHomeModule Object
  (
      [_actionHandlers:AdminHomeModule:private] =&gt; Array
          (
              [] =&gt; AdminModuleHomeAction
          )
  
      [_action:Module:private] =&gt; 
      [_actionObj:Module:private] =&gt; 
      [_actionHandlers:Module:private] =&gt; Array
          (
          )
  
  )
  </code></pre>
  
  <p>where as you guys can see I get two instances of _actionHandlers one for parent class and one from the current class that extends Module. I don't get why I have two _actionHandlers? Shouldn't I overwrite it when declaring it in child class, because right now _prepareActionObject is looking in the wrong place and I get this nasty error...</p>