Главная /
PHP: ООП и классы /
Для расширения функциональности класса cWorker был разработан класс cManager. Конструктор нового класса не изменяет способ генерации значений полей родителя при создании объекта, поэтому было принято решение повторно использовать старый код. Содержимое фа
Для расширения функциональности класса cWorker
был разработан класс cManager
. Конструктор нового класса не изменяет способ генерации значений полей родителя при создании объекта, поэтому было принято решение повторно использовать старый код. Содержимое файла class.Worker.php:
<?php
class cWorker
{
/*базовая функциональность*/
public $Active = TRUE; protected $Salary = 0; private $FullName;
function __construct($_Salary,$_FullName)
{
if($_Salary<=0)
{
$this->Active = FALSE;
}
else
$this->Salary = $_Salary;
$this->FullName = $_FullName;
}
}
class cManager extends cWorker
{
/*расширенная функциональность*/
protected $SubordinatesCount;
function __construct($_Salary,$_FullName,$_SubordinatesCount)
{
___;
$this->SubordinatesCount = $_SubordinatesCount;
}
}
?>
Среди приведенных ниже фрагментов укажите все варианты кода, подстановка которого вместо знаков подчеркивания решит поставленную задачу:
вопрос
Правильный ответ:
$this->__construct($_Salary,$_FullName)
$parent->__construct($_Salary,$_FullName)
parent::__construct($_Salary,$_FullName)
self:: __construct($_Salary,$_FullName)
решение поставленной задачи невозможно, так как поле с модификатором доступа
private
в родительском классе недоступно из производного класса Сложность вопроса
88
Сложность курса: PHP: ООП и классы
88
Оценить вопрос
Комментарии:
Аноним
Экзамен сдал и ладушки.
09 апр 2020
Аноним
спасибо
23 июл 2017
Другие ответы на вопросы из темы программирование интуит.
- # Сценарий PHP содержит следующий код: <?php class cFoo { function ~cFoo() {echo "был вызван деструктор";} function __construct() {echo "|был вызван конструктор|";} } $bar = new cFoo(); ?> Укажите результат выполнения сценария:
- # Сценарий PHP содержит следующий код: <?php class cFoo { function ~cFoo() {echo "был вызван деструктор";} function cFoo() {echo "|был вызван конструктор|";} } $bar = new cFoo(); ?> Укажите результат выполнения сценария:
- # Из приведенных ниже высказываний укажите истинное:
- # Если во внешней области видимости происходит попытка получить значение private поля класса, метод __get() которого определен:
- # Код, расположенный в try-блоке после throw: