Intermediate classes in the initialize() chain set up prototypes and define properties. Forgetting to call Base::initialize() in any override would silently skip that setup.