Comment faire pour résoudre " Définir et lancer un dédié exception au lieu d'utiliser un générique.'
J'ai besoin de throw RuntimeException
lors de la longueur des deux listes n'est pas égal. Nous sommes à l'aide de SonarQube
outil de revue de code objet.
Voici le code:
if (objctArray.length != columnArray.length) {
throw new RuntimeException(String.format("objctArray and columnArray length is not same. objctArray length = %d, columnArray length = %d", objctArray.length, columnArray.length));
}
Maintenant, SonarQube
pose problème Define and throw a dedicated exception instead of using a generic one.
à throw new RuntimeException
ligne. Je ne sais pas qui d'exception que je puisse le remplacer pour résoudre SonarQube
question.
Le message est assez clair. Ce que ne comprenez-vous pas?
OriginalL'auteur Kruti Patel | 2016-02-22
Vous devez vous connecter pour publier un commentaire.
Si ces deux listes sont les arguments passés à une méthode,
IllegalArgumentException
serait un bon candidat pour lancer. C'est une sous-classe deRuntimeException
, de sorte que vous aurez toujours être jeter une sorte deRuntimeException
.OriginalL'auteur Eran
Ne jetez pas les exceptions génériques. Vous devez être sous-classement d'Exception, puis de le jeter vos sous-classe, ainsi que le type de l'exception en fait fournit des informations sur ce qui se passe, en permettant aux clients de la fonction de l'attraper et de le traiter de façon appropriée.
OriginalL'auteur Tim Jasko