configure(); } class BarClass { } class BazClass { public function configure($instance) { $instance->configure(); } static public function getInstance() { return new self(); } static public function configureStatic($instance) { $instance->configure(); } static public function configureStatic1() { } } class BazFactory { static public function createStatic() { return new BazClass(); } public function create() { return new BazClass(); } }