Если вы пишете всю заявку, то ваши причины ваши. Я могу вспомнить несколько ситуаций, когда вы могли бы захотеть выбросить исключение и позволить приложению умереть, хотя большинство из них не очень веские причины.
Лучшая причина обычно при отладке. Я часто отключаю исключения во время отладки, чтобы я лучше знал, где что-то не так. Вы также можете просто включить выброшенные исключения в отладчике, если вы запускаете его на машине с отладчиком.
Другая возможная причина в том, что продолжение после выдачи исключения не имеет смысла или может привести к возможному безвозвратному повреждению данных или, что еще хуже (подумайте, роботы с лазерными лучами, но тогда вы должны быть чертовски уверены, что ваше приложение справляется с этими ситуациями IMO сбой программы - просто ленивый путь).
Если вы пишете код API или Framework-код, который вы не будете использовать самостоятельно, то вы не представляете, поймает ли кто-нибудь ваши исключения.