Почему нельзя объявить константу без указания значения

от admin

Java: объявление константы без значения

Всем привет, столкнулся с проблемой, что нельзя объявить кностанту без значения.

Компилятор ругается и требует дать константе значение. Но я это сделать не могу, т.к. значение нужно задать позже, которые мне нужно, и которые уже менять будет нельзя.

Ответы (3 шт):

На то она и константа, что ее значение нельзя менять. Но можно создать под это дело свой класс, у которого будут методы set\get. метод set проверяет специальный флаг «установки значения» и не допускает повторной инициализации.

Набросок кода. (возможно есть опечатки)

Константные значения можно задавать в конструкторе, после необходимой вам инициализации.

В такой декларации разрешается инициализация final или сразу или в конструкторе:

Java: объявление константы без значения

Всем привет, столкнулся с проблемой, что нельзя объявить кностанту без значения.

Компилятор ругается и требует дать константе значение. Но я это сделать не могу, т.к. значение нужно задать позже, которые мне нужно, и которые уже менять будет нельзя.

В такой декларации разрешается инициализация final или сразу или в конструкторе:

Константные значения можно задавать в конструкторе, после необходимой вам инициализации.

На то она и константа, что ее значение нельзя менять. Но можно создать под это дело свой класс, у которого будут методы set\get. метод set проверяет специальный флаг «установки значения» и не допускает повторной инициализации.

Набросок кода. (возможно есть опечатки)

Дизайн сайта / логотип © 2023 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2023.3.11.43304

Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.

SyntaxError:пропущено=в const-декларации

Исключение JavaScript «отсутствует = в объявлении константы» возникает, когда объявлению const RED_FLAG; не было присвоено значение в том же операторе (например, const RED_FLAG; ). Вам необходимо предоставить один ( const RED_FLAG = ‘#ff0’ ).

Message

Error type

Что пошло не так?

Константа — это значение, которое программа не может изменить во время нормального выполнения. Он не может быть изменен путем переназначения и не может быть повторно объявлен. В JavaScript константы объявляются с помощью ключевого слова const . Требуется инициализатор для константы; то есть вы должны указать его значение в том же заявлении, в котором оно объявлено (что имеет смысл, учитывая, что его нельзя будет изменить позже).

Examples

Пропавший инициализатор

В отличие от var или let , вы должны указать значение для объявления const . Это бросает:

Исправление ошибки

Существует несколько вариантов исправления этой ошибки.Проверьте,что должно было быть достигнуто с помощью рассматриваемой константы.

Добавление постоянной величины

Укажите постоянное значение в том же заявлении,в котором оно было объявлено:

Читать:
Как написать меньше 5
const , let или var ?

Не используйте const , если вы не собирались объявлять константу. Возможно, вы хотели объявить переменную с блочной областью видимости с помощью let или глобальную переменную с помощью var . Оба не требуют начального значения.

JavaScript: undefined

Объявление переменных возможно и без указания конкретного значения. Что будет выведено на экран если её распечатать?

На экране появится undefined , специальное значение особого типа, которое означает отсутствие значения. Undefined активно используется самим JavaScript в самых разных ситуациях, например, при обращении к несуществующему символу строки:

Смысл (семантика) значения undefined именно в том, что значения нет. Однако, ничто не мешает написать такой код:

И хотя интерпретатор позволяет такое сделать, это нарушение семантики значения undefined , ведь в этом коде выполняется присваивание, а значит — подставляется значение.

JavaScript — один из немногих языков, в которых в явном виде присутствует понятие undefined . В остальных языках его роль выполняет значение null , которое, кстати, тоже есть в JavaScript.

Вопрос на самопроверку. Почему нельзя объявить константу без указания значения?

Ответ Константу невозможно изменить или переопределить. Ее значение необходимо указывать строго при определении.

Задание

Выведите на экран значение undefined , не указывая его явно (через присваивание или передав напрямую в console.log() ). Если не догадаетесь, как это сделать, подсмотрите решение учителя.

Если вы зашли в тупик, то самое время задать вопрос в «Обсуждениях». Как правильно задать вопрос:

  • Обязательно приложите вывод тестов, без него практически невозможно понять что не так, даже если вы покажете свой код. Программисты плохо исполняют код в голове, но по полученной ошибке почти всегда понятно, куда смотреть.

Тесты устроены таким образом, что они проверяют решение разными способами и на разных данных. Часто решение работает с одними входными данными, но не работает с другими. Чтобы разобраться с этим моментом, изучите вкладку «Тесты» и внимательно посмотрите на вывод ошибок, в котором есть подсказки.

Это нормально ��, в программировании одну задачу можно выполнить множеством способов. Если ваш код прошел проверку, то он соответствует условиям задачи.

В редких случаях бывает, что решение подогнано под тесты, но это видно сразу.

Создавать обучающие материалы, понятные для всех без исключения, довольно сложно. Мы очень стараемся, но всегда есть что улучшать. Если вы встретили материал, который вам непонятен, опишите проблему в «Обсуждениях». Идеально, если вы сформулируете непонятные моменты в виде вопросов. Обычно нам нужно несколько дней для внесения правок.

Кстати, вы тоже можете участвовать в улучшении курсов: внизу есть ссылка на исходный код уроков, который можно править прямо из браузера.

Полезное

Определения

undefined — аналог отсутствия значения; указывает, что переменной не присвоено значение или она вообще не объявлена.

Похожие статьи