Я получил следующий вызов кода.Речь идет об интерфейсе, наследовании классов и т. Д. Не знал, как это сделать.Вот что я получил
// interface bird
interface Bird
{
// lay egg
public function layEgg();
}
// chicken can lay egg
class Chicken implements Bird
{
public function layEgg() {
return new Egg();
}
}
// class egg
class Egg
{
public $count=0;
// egg, bird type
public function __construct($birdType)
{
}
// hatch, born chick
public function hatch()
{
if($this->count == 0)
$this->count++;
if($this->count == 1)
throw new Exception('lay egg for 2nd time');
}
}
Есть 4 требования: Курица реализует интерфейс птицы.
Курица откладывает куриное яйцо.
Различные типы птиц откладывают разные яйца, соответственно.
Люк дважды выдаст исключение.
Есть идеи?