IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

avec Java Discussion :

Gestion des exeptions (try catch) en Java


Sujet :

avec Java

  1. #1
    Membre éclairé Avatar de EIN-LESER
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2008
    Messages
    703
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2008
    Messages : 703
    Par défaut Gestion des exeptions (try catch) en Java
    Hi
    Je suis nouveau et me permets de me présenter.
    Je suis actuellement (et depuis peux de temps ^^) une formation de développeur informatique.

    Il y a un petit truc que j’ai du mal a saisir correctement et espère que l’un de vous pourras éclairer la lanterne :-p

    La gestion des exceptions consiste d’après ce que j’ai compris d’attraper une exception levée dans une partie de notre code source ou on est conscient qu’une exception risque de se produire et de la traiter avec catch.

    Ce que j’ai du mal à intégrer c la façon concrète de gérer cette exception.
    J’ai le grand défaut de comprendre qu’avec des exemples tangibles ce qui explique mon désarroi lol.
    Toutes les explications que j’ai trouve sur le net et dans mes cours sont générales et j’arrive pas du coup a me rentrer sa dans la tête.

    PS je travaille sous JBuildes 10

    Help

    Merci d’avance

  2. #2
    Membre Expert
    Avatar de CheryBen
    Inscrit en
    Mai 2005
    Messages
    1 599
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 599
    Par défaut
    Une exception sert à stopper un traitement en cours et renvoyer une erreur en indiquant le type de l'erreur et une cause (en général).

    Par exemple si on veut écrire dans un fichier, on doit catcher IOException qui sera levée si le fichier est en lecture seule. (il y a d'autres causes de IOException)
    Tu peux dans ce cas imaginer que dans le catch tu créés une popup indiquant que l'écriture du fichier à échoué.

    J'espère avoir été assez clair dans mon exemple.

  3. #3
    Membre Expert
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 348
    Par défaut
    Je me permets d'intervenir également, en prenant un parallèle avec quelquechose de plus concret qui te clarifiera peut être la chose.

    Imagine une entreprise. Le big boss donne un ordre à ses subalternes, qui eux même donnent des ordres au niveau en dessous etc ...
    Chacun a une certaine visibilité de la tâche. Le big boss voit la réalisation dans son ensemble mais pas les détails, et à l'inverse quelqu'un tout en bas voit un bout de détail mais n'a en général pas d'idée de la globalité.
    En programmation, c'est un peu la même idée. Maintenant, si un problème se produit, la personne a qui est arrivé le problème a alors deux choix :
    1) Elle sait comment gérer le problème car il est directement lié à sa tâche, et elle le gère (ça correspond à un try/catch)
    2) Elle ne sait pas comment gérer le problème, elle ne peut pas décider elle même. Elle remonte alors l'information au niveau supérieur de la hiérarchie (ça correspond à un throw).

    Pour tout incident, il y a un "bon niveau" auquel on sait décider de ce qu'il faut faire pour gérer le problème. Trouver ce bon niveau n'est pas toujours simple, surtout au début. Si je reprends mon parallèle, bien entendu dans une société le fait qu'il n'y ait plus de papier dans l'imprimante peut être géré par la personne qui imprime et n'a pas à être remonté au big boss, et inversement un gros souci tel qu'un feu ne peut pas être géré uniquement par la personne qui le découvre.

  4. #4
    Membre éclairé Avatar de EIN-LESER
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2008
    Messages
    703
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2008
    Messages : 703
    Par défaut
    Donc on peut très bien renvoyer un message d’erreur et continuer le programme normalement en stockant par exemple dans la variable qui a levé l’exception une valeur par défaut ?
    Sorry je suis le spécialiste des questions bêtes lol

  5. #5
    Membre Expert
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 348
    Par défaut
    Exactement, dans ce cas tu fais quelquechose comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    try {
      variable = calculDeLaVariable();
    }
    catch (CalculException e) {
      variable = valeurParDefaut;
    }
    Attention à ce que ca corresponde à ce que tu souhaites et pas simplement à mettre une valeur par défaut pour éviter l'erreur !

    Si je reprends un exemple avec la réalité, je peux décider de retirer 1000 euros au distributeur mais s'il me dit que je n'ai pas assez d'argent décider finalement de retirer 10 euros

  6. #6
    Membre éclairé Avatar de EIN-LESER
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2008
    Messages
    703
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2008
    Messages : 703
    Par défaut
    Génial ^^
    Merci mille fois la je comprends :-p
    Sorry mais je débute en java et en prog et c relativement pointus java il me semble par rapport a C par exemple

    Merci encore

  7. #7
    Membre éclairé Avatar de dv-2008
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    240
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 240
    Par défaut
    à votre avis faut-il vraiment passer par c++ avant de commencer java
    parce que je suis aussi un debutant lol

  8. #8
    Membre Expert
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 348
    Par défaut
    Je ne pense pas que ce soit un prérequis, en tout cas moi je n'ai jamais fait de C++ (mais du C oui et ca me semble assez indispensable).

    N'oublie pas le

  9. #9
    Membre éclairé Avatar de EIN-LESER
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2008
    Messages
    703
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2008
    Messages : 703
    Par défaut
    Citation Envoyé par dv-2008 Voir le message
    à votre avis faut-il vraiment passer par c++ avant de commencer java
    parce que je suis aussi un debutant lol


    Personnellement je n’ai jamais fait de C++ non plus. Un peux de C peut, je pense t’aider à comprendre les bases de la programmation et du fait plus facilement passer au java d’au temps plus que beaucoup de commandes se font de la même manière.

    Pour les bases du C tu a le site ici (forcement lol c une référence).

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Gestion des droits dans une application Java
    Par Donaldo dans le forum Langage
    Réponses: 10
    Dernier message: 14/02/2008, 18h15
  2. [Axis 1.0] Gestion des exeptions
    Par tatemilio2 dans le forum Services Web
    Réponses: 1
    Dernier message: 22/09/2006, 11h00
  3. gestion des entrées et sortie en java
    Par lecyberax dans le forum Entrée/Sortie
    Réponses: 3
    Dernier message: 14/05/2006, 22h51
  4. gestion des exeptions sous delphi6
    Par meghaoui dans le forum Bases de données
    Réponses: 4
    Dernier message: 10/05/2006, 14h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo