web-dev-qa-db-fra.com

quelle exception devrait être levée lorsque les contrôles de bon sens échouent?

Quelle exception SPL doit être levée en cas d'échec des contrôles de cohérence? Par exemple, si la fonction check () échoue lors de la sauvegarde de données avec JTable ou si la vérification d’un paramètre échoue? Je préférerais utiliser quelque chose de plus spécifique que RuntimeException.

Si la solution est d'étendre mes propres exceptions, quel serait le meilleur endroit pour les placer? Dans un fichier de classe d'assistance?

1
nimble

Tout d'abord, je vous recommande de lire ces deux articles:

Quelle est la bonne manière de gérer les exceptions?

http://martinfowler.com/articles/replaceThrowWithNotification.html

En gros, il se peut que, dans votre cas, il ne soit pas sage d'utiliser des exceptions. Cela dépend de la réponse à la question si ce comportement est attendu (pas une exception) ou non (alors c'est une exception).

Si vous pensez que vous devez utiliser des exceptions après avoir lu les pages liées, la question suivante concerne les avantages de l'utilisation d'exceptions plus spécifiques (personnalisées)? La règle de base est d'utiliser des exceptions intégrées chaque fois que possible. Peut-être jeter un peu de contexte et je peux élaborer davantage.

1
JSamir