Попробуйте:
switch(1) {
case '1':
alert('Switch comparison is NOT strict.');
break;
case 1:
alert('Switch comparison is strict.');
break;
default:
alert('Huh?');
}
Вам не нужно явно объявлять RuntimeException
в объявлении метода. Поскольку IllegalArgumentException
является RuntimeException
, вы можете удалить его.
Исключения во время выполнения могут встречаться где угодно в программе, и в типичном случае их может быть очень много. Необходимость добавлять исключения времени выполнения в каждое объявление метода уменьшит ясность программы. Таким образом, компилятор не требует, чтобы вы перехватывали или указывали исключения времени выполнения (хотя вы можете).
blockquote>Вы можете упомянуть это в разделе JavaDoc метода. Это дает потребителю подсказку о любых непроверенных исключениях. Также распространено добавлять эту информацию косвенно к параметрам.
/** * @throws IllegalArgumentException if the suite combination is illegal */ /** * @param myParam the param, must not be null */
Проверка параметров часто включает в себя выдачу
IllegalArgumentException
, если один параметр не соответствует требованиям. Так как они перечислены в JavaDoc (здесь не нуль ), это ошибка программиста, если он пропуститnull
.