Указать тип передаваемого обьекта

209
31 марта 2018, 17:46

У меня есть в директории models 3 файла. В первом файле написан интерфейс Model, в другом класс Cat, a в 3 класс Dog, которые этот интерфейс имплементируют. Потом я создал второю директорию где таким же способом создал интерфейс и классы имплементирующие его, но они называются DAO и CatDAO с DogDAO. В DAO интерфейсе я создал метод

public function writeNameOfObj(Model $obj);

А теперь мне надо имплементировать эти методы, но мне надо написать writeNameOfObj(Cat $obj) и writeNameOfObj(Dog $obj) соответственно. Вопрос в том как это сделать.

Answer 1

Цитата из документации:

Объявления методов в классе, реализующем интерфейс, должны точно совпадать с объявлениями, используемыми в интерфейсе, в противном случае будет вызвана фатальная ошибка.

Поэтому так, как Вы хотите, сделать нельзя

READ ALSO
Проблема с редактированием xml

Проблема с редактированием xml

Проблема такая, работаю в пхп скрипте с xml файлом, все подгружается без вопросов, информацию из файла считывает корректно, но не сохраняет...

208
Формирование таблицы из списка

Формирование таблицы из списка

Всем приветИмеется список разделов - х, в большинстве разделов имеются подразделы - y но есть разделы и без подразделов

257
Callbackquery Telegram bot Longman

Callbackquery Telegram bot Longman

Добрый день, коллеги! Нужна помощь, никак не пойму почему в чат ничего не возвращается

377
Предотвратить повторное сохранение

Предотвратить повторное сохранение

Всем привет, есть админка и редактирование новости в котором принимает участие большое количество человек

259