Класс UnsupportedOperationException
Класс UnsupportedOperationException наследуется от RuntimeException и используется для обозначения ситуации, когда запрошенная операция не поддерживается классом или объектом. Это исключение обычно выбрасывается коллекциями и другими структурами данных, которые реализуют интерфейс, но не поддерживают одну из его операций (например, попытка добавить элемент в неизменяемый список). Конструктор класса не принимает обязательных параметров, но может принимать сообщение об ошибке в виде строки, а также причину (другое исключение).
Синтаксис
new UnsupportedOperationException()
new UnsupportedOperationException(String message)
new UnsupportedOperationException(String message, Throwable cause)
Пример
Давайте создадим неизменяемый список с помощью List.of и попробуем добавить в него элемент. Это вызовет исключение UnsupportedOperationException, так как список нельзя изменить:
import java.util.List;
public class Main
{
public static void main(String[] args)
{
try
{
List<String> list = List.of("a", "b", "c", "d", "e");
list.add("f");
}
catch (UnsupportedOperationException e)
{
System.out.println("Operation not supported");
}
}
}
Результат выполнения кода:
"Operation not supported"
Пример
Давайте выбросим исключение UnsupportedOperationException вручную в методе, который по какой-то причине не может выполнить операцию:
public class Main
{
public static void main(String[] args)
{
try
{
process();
}
catch (UnsupportedOperationException e)
{
System.out.println(e.getMessage());
}
}
public static void process()
{
throw new UnsupportedOperationException("This method is not implemented yet");
}
}
Результат выполнения кода:
"This method is not implemented yet"
Смотрите также
-
оператор
throw,
который выбрасывает исключение -
конструкция
try,
которая используется для обработки исключений -
блок
catch,
который перехватывает исключения -
класс
IllegalStateException,
который сигнализирует о неверном состоянии