РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
450 of 723 menu

Класс UnimplementedError

Класс UnimplementedError представляет собой ошибку, которая возникает, когда метод или функция ещё не реализованы. Он наследуется от класса Error и часто используется разработчиками в качестве заглушки для методов, которые планируется реализовать позже. В первый параметр конструктора мы передаём сообщение с описанием ошибки, во второй - трассировку стека (необязательный параметр).

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

Синтаксис

UnimplementedError([String? message])

Пример

Давайте создадим класс с методом, который пока не реализован, и выбросим ошибку UnimplementedError при его вызове:

class Calculator { int add(int a, int b) { throw UnimplementedError('Method add is not implemented yet'); } } void main() { Calculator calc = Calculator(); try { print(calc.add(1, 2)); } on UnimplementedError catch (e) { print(e.message); } }

Результат выполнения кода:

"Method add is not implemented yet"

Пример

Давайте выбросим ошибку без сообщения и посмотрим, что вернёт свойство message:

void main() { try { throw UnimplementedError(); } on UnimplementedError catch (e) { print(e.message); } }

Результат выполнения кода:

null

Пример

Давайте проверим, что UnimplementedError является наследником класса Error, и выведем тип ошибки:

void main() { UnimplementedError err = UnimplementedError('Not ready'); print(err is Error); print(err.runtimeType); }

Результат выполнения кода:

true UnimplementedError

Смотрите также

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