Try et catch

Résolu
ShinJava Messages postés 19 Date d'inscription mercredi 22 septembre 2004 Statut Membre Dernière intervention 16 novembre 2004 - 22 sept. 2004 à 16:14
ShinJava Messages postés 19 Date d'inscription mercredi 22 septembre 2004 Statut Membre Dernière intervention 16 novembre 2004 - 22 sept. 2004 à 21:50
Bonjour tout le monde,
J'ai du mal à comprendre l'utilité du try et catch...
Peut-on s'en passer quand on code en java?
merci
++

4 réponses

indiana_jules Messages postés 750 Date d'inscription mardi 9 mars 2004 Statut Membre Dernière intervention 23 décembre 2008 22
22 sept. 2004 à 16:36
Tout dépend de ce que tu veux faire
En effet, si tu écris du code qui peut générer une erreur dite fatale (du style, écrire dans un fichier et qu'il ne soit pas présent, ou encore diviser un nombre par zéro), on a besoin du try catch. Ils ont pour utilité d'isoler un code à risque et si une erreur survient, de faire une opération par défaut (sinon, généralement, le programme s'arrête).

ex:
try{
//Ici se situe un code d'ouverture de fichier
....
}
catch(Exception e){
//Pas de bol, le fichier n'existe pas, j'avertis donc l'utilisateur
System.out.println("Erreur, manque le fichier");
}


Voilà, en espèrant que cela t'éclaire

[Tout le monde a des idées : la preuve, c'est qu'il y en a de mauvaises]
3
ShinJava Messages postés 19 Date d'inscription mercredi 22 septembre 2004 Statut Membre Dernière intervention 16 novembre 2004
22 sept. 2004 à 17:02
Je te remercie pour ta réponse.
Effectivement tu as etait tres clair. Je comprend mieux.
Mais en prenant ton exemple de la division par 0, c'est mieux d'utiliser la méthode try and catch ou bien de faire un truc du genre :

if (denominateur == 0)
{
System.out.println("Impossible de diviser par 0");
}
else
{
on fait la division;
}

désolé de t'embeter...
Merci d'avance
++
ShinJava
3
indiana_jules Messages postés 750 Date d'inscription mardi 9 mars 2004 Statut Membre Dernière intervention 23 décembre 2008 22
22 sept. 2004 à 17:08
Ben j'sais pas, moi je fais un truc du style :
public double division(double a, double b){
try{
return a/b;
}
catch(Exception){
return 0;
}
}


Mais bon, ton code est tout indiqué aussi :p

Voilà

[Tout le monde a des idées : la preuve, c'est qu'il y en a de mauvaises]
3
ShinJava Messages postés 19 Date d'inscription mercredi 22 septembre 2004 Statut Membre Dernière intervention 16 novembre 2004
22 sept. 2004 à 21:50
Ah non non , t'inquiete pas , c'était pas mon intention que tu me fasses un code... je comptais pas utiliser de division. C'est juste que dans la plupart des exemples, je retrouvais souvent le try and catch. Je me demandais si c'était vraiment efficace.
En tout cas merci à toi de m'avoir répondu.
++
ShinJava
3
Rejoignez-nous