Comment résoudre Java.égouter.refléter.InvocationTargetException Erreur

Comment résoudre Java.égouter.refléter.InvocationTargetException Erreur

Lors de l'analyse des limitations de code afin de rationaliser le code, il peut y avoir des cas où le développeur doit localiser le problème réel. Par exemple, la configuration de la limitation enveloppée pour éliminer instantanément le goulot d'étranglement réel. Dans de telles situations, résoudre le «Java.égouter.refléter.InvocationTargetException«L'erreur est d'une grande aide pour analyser et régler efficacement les fonctionnalités du code.

Ce blog va développer la résolution du «Java.égouter.refléter.InvocationTargetException" erreur.

Qu'est-ce que le «Java.égouter.refléter.InvocationTargetException ”Erreur?

Lorsqu'une méthode de classe invoquée par «Méthode.invoquer()"Enregistre une exception, il est enveloppé par le"Java.égouter.refléter.InvocationTargetException»Classe, cachant ainsi la limitation réelle.

Occurrence du «java.égouter.refléter.InvocationTargetException ”Erreur

Présentation de l'exemple suivant pour analyser la survenue du «Java.égouter.refléter.InvocationTargetException«Limitation avec l'aide du«getMethods ()" et "invoquer()«Méthodes. La première méthode invoque toutes les méthodes de classe et la dernière méthode accède à la méthode sous-jacente représentée par l'objet de méthode.

Syntaxe

Invoque d'objet public (objet ob, objet… arg)

Dans cette syntaxe:

  • "Objet ob»Point à l'objet à partir de l'objet à partir de la méthode sous-jacente.
  • "Objet… arg»Fait référence aux arguments utilisés pour l'appel de la méthode.

Tout d'abord, assurez-vous d'inclure la bibliothèque suivante pour fournir les détails concernant une méthode sur une catégorie ou une interface particulière et donner accès à la même chose:

Importer Java.égouter.refléter.Méthode;

Maintenant, passez aux lignes de code fournies ci-dessous:

classe invocationException
public void parseInteger ()
int x = entier.Parseint (null);
Système.dehors.println (x);

classe publique Langexception
public static void main (String args [])
InvocationException ti = new invocationException ();
Méthode [] M = invocationException.classe.getMethods ();
essayer
m [0].invoquer (ti);

attraper (exception e)
Système.dehors.println ("L'exception en wrapper est:" + e);

Selon ce bloc de code, appliquez les étapes suivantes:

  • Tout d'abord, définissez une classe nommée «InvocationException".
  • Dans sa définition, définissez la fonction "parseInteger ()"Et analyser le"nul”Chaîne dans un entier, comme sa définition via le«parseInt ()" méthode.
  • Dans le "principal«Méthode, créez l'objet de classe à l'aide du«nouveau»Mot-clé et«InvocationException ()”Constructeur, respectivement.
  • Dans l'étape suivante, appliquez le «getMethods ()»Méthode pour récupérer toutes les méthodes de classe.
  • Maintenant, incluez le «essayer«Bloquer et invoque la méthode de première classe en se référant à son index, i.e., "0»Et l'objet de classe comme«invoquer()«Paramètre de la méthode, respectivement.
  • Enfin, faites face à l'exception face dans le «essayer"Bloc dans le"attraper" bloc.

Sortir

Dans cette sortie, il peut être analysé clairement que l'exception réelle, je.e., "NumberFormatexception"Est enveloppé par le"InvocationTargetException".

Résolution du «Java.égouter.refléter.InvocationTargetException ”Erreur

Pour faire face à la limitation discutée, appliquez le «getcause ()" méthode. Cette méthode renvoie la cause / raison de l'exception ou donne «nul«Si la raison de l'exception est inconnue.

Pour ce faire, ajoutez simplement la méthode discutée dans le «attraper”Block pour enregistrer l'exception réelle et la suite, comme suit:

Système.dehors.println ("L'exception réelle est:" + e.getCause ());

Dans ce résultat, il est évident que l'exception enveloppée avant est enregistrée de manière appropriée via la méthode annexée.

Conclusion

Pour résoudre le «Java.égouter.refléter.InvocationTargetException«Erreur, appliquez le«getcause ()»Méthode pour enregistrer l'exception réelle sur la console. Il aide à analyser la cause réelle de la limitation menant à sa solution. Ce blog visait à résoudre le «Java.égouter.refléter.InvocationTargetException" erreur.