обратите внимание, что регистр не учитывается. Например, когда у вас есть класс Bark () для игры с собакой, имя класса Bark - это ваша ссылка на шум, производимый собакой.
Если вы хотите, чтобы конкретная собака (например, пудель, который расширяет общий объект Dog) лаяла, вы можете назвать этот метод bark (), потому что именно этого вы хотите, чтобы собака делала (см. Двойственность между ВЕЩЕЙ и КОМАНДА? (Класс Bark и метод bark ()).
Итак, когда вы делаете это:
интерфейс BarkBehaviour
{
публичная функция кора ();
}
класс Bark реализует BarkBehaviour
{
публичная функция лает ()
{
echo "\ nWoof!";
}
}
создание экземпляра свойства barkBehaviour вашей собаки будет повторять "Woof", потому что PHP считает, что метод bark () является конструктором для класса Bark, который вы НЕ намеревались таким образом. В JAVA эти вещи чувствительны к регистру, поэтому конструктор классов Bark должен называться Bark (), а не bark ().