Junior — Middle
É permitido declarar um método com modificador de privacidade dentro de uma interface?
sobes.tech IA
Resposta da IA
В PHP интерфейсы предназначены для объявления публичных методов, которые должны реализовываться классами. Объявлять методы с модификатором приватности внутри интерфейса нельзя — все методы интерфейса по умолчанию публичные.
Если попытаться объявить приватный метод в интерфейсе, это вызовет ошибку.
Пример корректного интерфейса:
interface Logger {
public function log(string $message);
}
Если нужна приватная логика, её реализуют внутри класса, а интерфейс описывает только публичный контракт.