Компиляция этого Java-кода:
package com.acme.javasdk;
public class Enum_Test
{
public enum MyEnum
{
NoOption (0x00),
Option1 (0x01),
Option2 (0x02),
Option3 (0x04),
Option4 (0x08),
;
long value;
MyEnum(long value)
{
this.value = value;
}
public long getValue()
{
return(value);
}
}
MyEnum option;
public void setOption(
java.util.EnumSet options
) throws java.lang.Exception
{
this.option = MyEnum.NoOption;
options.forEach(
option ->
addOption(option)
);
}
public void addOption(
MyEnum option
) throws java.lang.Exception
{
long lNewValue = this.option.value |= option.value;
if(lNewValue == MyEnum.NoOption.value)
{
throw new java.lang.Exception(
"Invalid option."
);
}
this.option.value = lNewValue;
}
}
выдает следующую ошибку, хотя метод объявляет, что может быть выброшено java.lang.Exception:
Enum_Test.java:37: error: unreported exception Exception; must be caught or declared to be thrown
[javac] addOption(option)
[javac] ^
[javac] 1 error
Даже если я обрабатываю исключение в методе:
public void setOption(
java.util.EnumSet options
) throws java.lang.Exception
{
this.option = MyEnum.NoOption;
try
{
options.forEach(
option ->
addOption(option)
);
}
catch(java.lang.Exception e)
{
throw e;
}
}
он по-прежнему генерирует ошибку, из-за которой вызов addOption(option) может вызвать необработанное исключение:
Enum_Test.java:38: error: unreported exception Exception; must be caught or declared to be thrown
[javac] addOption(option)
[javac] ^
[javac] 1 error
Подробнее здесь: https://stackoverflow.com/questions/792 ... -exception
Java.util.EnumSet.forEach, запрашивающий несообщенное исключение [дубликат] ⇐ JAVA
Программисты JAVA общаются здесь
1732251568
Anonymous
Компиляция этого Java-кода:
package com.acme.javasdk;
public class Enum_Test
{
public enum MyEnum
{
NoOption (0x00),
Option1 (0x01),
Option2 (0x02),
Option3 (0x04),
Option4 (0x08),
;
long value;
MyEnum(long value)
{
this.value = value;
}
public long getValue()
{
return(value);
}
}
MyEnum option;
public void setOption(
java.util.EnumSet options
) throws java.lang.Exception
{
this.option = MyEnum.NoOption;
options.forEach(
option ->
addOption(option)
);
}
public void addOption(
MyEnum option
) throws java.lang.Exception
{
long lNewValue = this.option.value |= option.value;
if(lNewValue == MyEnum.NoOption.value)
{
throw new java.lang.Exception(
"Invalid option."
);
}
this.option.value = lNewValue;
}
}
выдает следующую ошибку, хотя метод объявляет, что может быть выброшено java.lang.Exception:
Enum_Test.java:37: error: unreported exception Exception; must be caught or declared to be thrown
[javac] addOption(option)
[javac] ^
[javac] 1 error
Даже если я обрабатываю исключение в методе:
public void setOption(
java.util.EnumSet options
) throws java.lang.Exception
{
this.option = MyEnum.NoOption;
try
{
options.forEach(
option ->
addOption(option)
);
}
catch(java.lang.Exception e)
{
throw e;
}
}
он по-прежнему генерирует ошибку, из-за которой вызов addOption(option) может вызвать необработанное исключение:
Enum_Test.java:38: error: unreported exception Exception; must be caught or declared to be thrown
[javac] addOption(option)
[javac] ^
[javac] 1 error
Подробнее здесь: [url]https://stackoverflow.com/questions/79213669/java-util-enumset-foreach-claiming-unreported-exception[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия