Это очень сильно зависит от приложения, которое вы разрабатываете.
Солдат, несмотря на незаконные вводы, может означать, что вывод программы является неправильным, что для приложения, которое рассчитывает дозы лекарств, было бы очень плохой вещью. С другой стороны, если ничего не приведет к катастрофическим последствиям, то, вероятно, ничего не получится.
Другой вариант - изменить недопустимые входные данные на ближайшее допустимое значение (например, если диапазон для целого числа составляет 0–100, и вы получаете -10, было бы хорошо установить его в 0 и продолжить обработку).
Вы должны попытаться подумать о возможных последствиях того, как вы обрабатываете ошибки в конкретном методе, который вы пишете, и как ваша обработка ошибок повлияет на все приложение.