What if I extended the class and that I try accessing $this->filters directly ?

    class FilterChainExtension extends FilterChain
    {
        public function __construct()
        {
            parent::__construct();
            $this->filters->getQueue(); // Fatal error
        }
    }

Or in any other method for that matter, any call to $this->filters directly would trigger an error "access to non-object"