Хотя я уже давно разрабатываю объекты для PHP, абстрактные классы для меня несколько новы. По моему мнению, я бы использовал абстрактный класс, когда я хочу определить список методов, которые я хочу, чтобы я или другие разработчики следовали, а также предоставляя некоторые базовые методы для разработки.Модификаторы доступа для свойств в абстрактных классах
Похоже, что нет способа определить свойства в абстрактном классе, что я считаю нечетным. Возьмем следующий код:
abstract class Gateway {
abstract public function process();
public function set_gateway_key($key) {
$this->key = $key;
}
}
Ключ такого рода является то, что вы, как правило, требуется ограничить доступ для того, чтобы запустить через какой-то проверки. Возможно, вы могли бы представить и другие сценарии. Тем не менее, вы вынуждены полагаться на разработчика, расширяющего этот абстрактный класс, чтобы установить этот модификатор доступа.
Я что-то упустил? Или нет способа сделать это?
Отлично подходит для меня, какую версию PHP вы используете? Сделал [быстрый тест] (http://sandbox.onlinephpfunctions.com/code/0c0dd7205ecba00a9034d1aee31ea32087002e1b) – elclanrs