Главная /
PHP: ООП и классы /
Для вывода количества месяцев в году бы разработан следующий код: <?php class cMonthCount { const MONTH_IN_A_YEAR = 12; } $foo = new cMonthCount(); echo $foo.MONTH_IN_A_YEAR; ?> В процессе выполнения сценария происходит ошибка. Из приведенных высказ
Для вывода количества месяцев в году бы разработан следующий код:
<?php
class cMonthCount
{
const MONTH_IN_A_YEAR = 12;
}
$foo = new cMonthCount();
echo $foo.MONTH_IN_A_YEAR;
?>
В процессе выполнения сценария происходит ошибка. Из приведенных высказываний укажите высказывание, раскрывающее причину некорректности кода:
вопрос
Правильный ответ:
константу следует объявить как
public
для предоставления доступа к ней извне класса
PHP не поддерживает возможность объявления константы внутри класса
для доступа к константам внутри объекта следует использовать не
" :: "
, а " . "
для доступа к константам внутри объекта следует использовать не
" :: "
, а " -> "
значение константы, объявленной в классе, не может быть получено через экземпляр этого класса - следует обращаться к нему как
" имя_класса::имя_константы"
Сложность вопроса
74
Сложность курса: PHP: ООП и классы
88
Оценить вопрос
Комментарии:
Аноним
Спасибо за решебник по интуиту.
28 фев 2019
Другие ответы на вопросы из темы программирование интуит.
- # Для расширения функциональности класса 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; } } ?> Среди приведенных ниже фрагментов укажите все варианты кода, подстановка которого вместо знаков подчеркивания решит поставленную задачу:
- # Сценарий PHP содержит следующий код: <?php abstract class cBase { protected $Data; function __construct($_Data){$this-"Data = $_Data;} final function ShowData(); } class cDerivative extends cBase { function ShowData(){return "значение равно ".$this-"Data;} } $foo = new cDerivative(3); echo $foo-"ShowData(); ?> Укажите результат выполнения сценария:
- # Сценарий PHP содержит следующий код: <?php class One { function __construct(){echo "One "; } } class Two { function __construct(){echo "Two "; } } class Three { function __construct(){echo "Three "; } } function __autoload($_class) { echo " !".$_class." ";} $a = new One; $b = new Two; $c = new Three; ?> Укажите результат выполнения сценария:
- # Сценарий PHP содержит следующий код: <?php class AClass { public $v =34; function __call($_name,$_args){$this->v--; echo " ".$this->v." ";} } $a = new AClass(); echo $a->d()." ".$a->v." ".$a->v." ".$a->v." ".$a->p()." ".$a->o(); ?> Укажите результат выполнения сценария:
- # Для вывода наиболее полной информации о пойманном исключении был разработан следующий код: <?php try {throw new Exception("тест");} catch (Exception $e){____;} ?> Среди приведенных ниже фрагментов укажите все варианты кода, подстановка которого вместо знаков подчеркивания решит поставленную задачу: