Главная / PHP: ООП и классы / Для расширения функциональности класса cCalculation был разработан класс cCalculationLogged. Конструктор нового класса не изменяет способ генерации значений полей родителя при создании объекта, поэтому было принято решение повторно использовать старый код

Для расширения функциональности класса cCalculation был разработан класс cCalculationLogged. Конструктор нового класса не изменяет способ генерации значений полей родителя при создании объекта, поэтому было принято решение повторно использовать старый код. Содержимое файла class.Calculation.php: <?php class cCalculation { /*базовая функциональность*/ public $Fed = TRUE; protected $DataPath = ""; private $CalcId; function __construct($_DataPath,$_CalcId) { if($_DataPath=="") { $this->Fed = FALSE; } else $this->DataPath = $_DataPath; $this->CalcId = $_CalcId; } } class cCalculationLogged extends cCalculation { /*расширенная функциональность*/ protected $LogPath; function __construct($_DataPath,$_CalcId,$_LogPath) { ___; $this->LogPath = $_LogPath; } } ?> Среди приведенных ниже фрагментов укажите все варианты кода, подстановка которого вместо знаков подчеркивания решит поставленную задачу:

вопрос

Правильный ответ:

$this->__construct($_DataPath,$_CalcId)
$parent->__construct($_DataPath,$_CalcId)
parent::__construct($_DataPath,$_CalcId)
self:: __construct($_DataPath,$_CalcId)
решение поставленной задачи невозможно, так как поле с модификатором доступа private в родительском классе недоступно из производного класса
Сложность вопроса
50
Сложность курса: PHP: ООП и классы
88
Оценить вопрос
Очень сложно
Сложно
Средне
Легко
Очень легко
Комментарии:
Аноним
Зачёт сдан. Лечу в бар отмечать сессию интуит
29 мар 2020
Оставить комментарий
Другие ответы на вопросы из темы программирование интуит.