Еще немного

аю о шаблонах проектирования в PHP и продолжаю видеть следующий синтаксис, например

abstract class AbstractObserver {
    abstract function update(AbstractSubject $subject_in);
}

или же

class PatternObserver extends AbstractObserver {
    public function __construct() {
    }
    public function update(AbstractSubject $subject) {   
    }
}

(код является частьюэто пример)

где "AbstractSubject" - это другой абстрактный класс.

Я привык определять такие методы, какmethodName($var), не включая имя класса там, какmethodName(className $var).

Итак, что же на самом деле делает имя класса в методе? Мое лучшее предположение, что он передает что-то вроде ссылки в этом классе? Можете ли вы объяснить мне, что это на самом деле?

Спасибо

 Mark Baker18 сент. 2017 г., 23:32
Это называетсяТип Хинтинг, и он определяет тип данных, что аргумент должен быть

Ответы на вопрос(1)

Решение Вопроса

Тип Хинтинг, так как PHP 7 вы можете использоватьскалярные типы набрать параметры подсказки. (Еще немного)

Ваш ответ на вопрос