<?php abstract class AbstractClass { abstract protected function gets(); public function out() { echo($this->gets()); } } class creator extends AbstractClass{ protected function gets() { return "call get\n"; } } class Factory extends creator { function __construct() { $f = new creator(); $f->out(); } } new Factory();
オブジェクトの生成をサブクラスで行う。
オブジェクトの詳細を隠して、
生成と実行を別々で行う。
あってるのか微妙。