Главная /
PHP: ООП и классы /
Сценарий PHP содержит следующий код: <?php class cFoo { function ~cFoo() {echo "был вызван деструктор";} function __construct() {echo "|был вызван конструктор|";} } $bar = new cFoo(); ?> Укажите результат выполнения сценария:
Сценарий PHP содержит следующий код:
<?php
class cFoo
{
function ~cFoo() {echo "был вызван деструктор";}
function __construct() {echo "|был вызван конструктор|";}
}
$bar = new cFoo();
?>
Укажите результат выполнения сценария:
вопрос
Правильный ответ:
|был вызван конструктор|
|был вызван конструктор|был вызван деструктор
пустая строка
сценарий не будет выполнен, т.к. код содержит ошибки
Сложность вопроса
50
Сложность курса: PHP: ООП и классы
88
Оценить вопрос
Комментарии:
Аноним
Это было сложно
31 июл 2020
Другие ответы на вопросы из темы программирование интуит.
- # Для вывода значения числа (округленного до 3.14) бы разработан следующий код: <?php class cPiProvider { const PI_VALUE = 3.14; } $foo = new cPiProvider(); echo $foo->PI_VALUE; ?> Результатом выполнения сценария является пустая строка. Из приведенных высказываний укажите высказывание, раскрывающее причину некорректной работы программы:
- # Сценарий PHP содержит следующий код: <?php class cFoo { protected $protected = "защищенный"; private $private = "закрытый"; function GetContents(){return $this->protected." ".$this->private;} } $foo = new cFoo(); echo $foo->GetContents()." ".$foo->protected." ".$foo->private; ?> Укажите результат выполнения сценария:
- # Для расширения функциональности класса cTemplate был разработан класс cTemplateExtended. Конструктор нового класса не изменяет способ генерации значений полей родителя при создании объекта, поэтому было принято решение повторно использовать старый код. Содержимое файла class.Template.php: <?php <?php class cTemplate { /*базовая функциональность*/ public $LastWarning; protected $TType; private $XMLStr; function __construct($_TType,$_XMLStr) { if($_TType=="") { $this->TType = "simple"; $this->LastWarning = "Invalid type, type set to 'simple'"; } else $this->TType = $_TType; $this->XMLStr = $_XMLStr; } } class cTemplateExtended extends cTemplate { /*расширенная функциональность*/ protected $AdditionalParams; function __construct($_TType,$_XMLStr,$_AdditionalParams) { ___; $this->AdditionalParams = $_AdditionalParams; } } ?> Среди приведенных ниже фрагментов укажите все варианты кода, подстановка которого вместо знаков подчеркивания решит поставленную задачу:
- # В классе определено одно свойство, имеющее модификатор доступа protected, и одно, имеющее модификатор доступа private. Для класса используется механизм итерации по умолчанию. Цикл, построенный на использовании foreach, даст доступ
- # Был разработан специализированный класс исключений, расширяющий информативность метода getCode(): <?php class eMyException extends Exception { function getCode() {return "Код исключения: ".$this->code;} } try {throw new eMyException("исключение");} catch (Exception $e){echo $e->getCode();} ?> Ожидалось, что результатом выполнения сценария станет строка "Код исключения: 0", однако в процессе выполнения сценария была сгенерирована фатальная ошибка. Из приведенных высказываний укажите высказывание, раскрывающее причину некорректности работы программы: