Почему не работает код? Помогите разобраться почему не работает код:interface BaseLogger{
public function baselog($param1, $param2);}
interface Logger implements BaseLogger {
private function log();
}
class MyLog implements Logger {
public function baselog(){}
public function log(){}}

21 Авг 2019 в 07:01
242 +1
0
Ответы
1

В данном коде есть несколько ошибок:

Нельзя объявлять методы как private в интерфейсе. Методы в интерфейсе всегда должны быть public.Нельзя использовать implements для расширения интерфейса. Вместо этого нужно использовать extends для наследования интерфейса.Метод baselog() в классе MyLog не принимает необходимые параметры $param1 и $param2, указанные в интерфейсе.

Исправленный код будет выглядеть следующим образом:

interface BaseLogger {
public function baselog($param1, $param2);
}
interface Logger extends BaseLogger {
public function log();
}
class MyLog implements Logger {
public function baselog($param1, $param2) {}
public function log() {}
}

После внесения этих изменений код должен работать правильно.

20 Апр в 13:09
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 83 795 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир