Когда использовать утверждение, а когда использовать исключение - PullRequest
111 голосов
/ 24 декабря 2009

Большую часть времени я буду использовать исключение для проверки условия в моем коде. Интересно, когда подходящее время использовать утверждение?

Например,

Group group=null;
try{
    group = service().getGroup("abc");
}catch(Exception e){
    //I dont log error because I know whenever error occur mean group not found
}

if(group !=null)
{
    //do something
}

Не могли бы вы указать, как здесь вписывается утверждение? Должен ли я использовать утверждение?

Кажется, я никогда не использую утверждения в производственном коде и вижу только утверждения в модульных тестах. Я знаю, что в большинстве случаев я могу просто использовать исключение для проверки, как описано выше, но я хочу знать подходящий способ сделать это «профессионально».

Ответы [ 11 ]

0 голосов
/ 24 декабря 2009

К сожалению, утверждения могут быть отключены. Находясь в производстве, вам нужна вся помощь, которую вы можете получить, когда выслеживаете что-то непредвиденное, поэтому заявители дисквалифицируют себя.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...