多型になると私はまだ初心者です。OOデザイン:親クラスから子クラスを返す
私のデータベースには犬、猫、そしてマウスのテーブルがあります。動物のクラスのようなものであることを
$animal = new Animal("dog", 12);
:私のような何かを呼び出すことができるようにしたい
class Animal {
protected $id;
protected $legs;
protected $height;
function __construct($type, $id) {
if ($type == "dog") {
return new Dog($id);
}
}
}
class Dog extends Animal {
function __construct($id) {
$this->id = $id;
$this->legs = 4;
$this->height = 1;
}
}
これは動作しませんが、私は新しい動物を呼び出すことができるようにしたいとパス特定の動物に戻してもらう。どのように私はこれを設計できますか? (私はPHPを使用しています)。
はい!これはまさにそれです。私は "Design Patterns in PHP"が最も有用であることを発見しました。他のPHPの記事は、同時に抽象化について話していたので、少し混乱しました。 –