Effectivement, mais on peut aussi y rem�dier :

try
{
}

catch(Exception e)
{
    if (e instanceof IOException || e instanceof NullPointerException) ...
    else throw e;
}

Mais bon, c'�tait pour coller pr�cis�ment � la question : je n'ai jamais
fait diff�remment d'Eric, m�me si la syntaxe lourdingue du try-catch en java
(et de bien d'autres langages) m'exasp�re.
La m�thode d'Eric, faisant appel � une m�thode de traitement, me semble
n�anmoins la plus propre, � moi aussi !

-----Message d'origine-----
De : Nicolas Delsaux [mailto:[EMAIL PROTECTED]]
Envoy� : mardi 14 mai 2002 15:06
� : [EMAIL PROTECTED]
Objet : Re: Traitement d'exceptions


Je pr�f�rais quand m�me nettement le code d'Eric : un tout petit peu plus
objet, nettement plus modulaire, il permet (pour l'instant) d'effectuer le
traitement, tout en se gardant facilement ouverte la possibilit� d'en
changer. Par ailleurs, si une troisi�me exception doit �tre renvoy�e � la
m�thode appelante, elle peut l'�tre sans souci, alors que ta m�thode la
caputre �galement.

Nicolas Delsaux

----- Original Message -----
From: Zeljko VELAJA
To: [EMAIL PROTECTED]
Sent: Tuesday, May 14, 2002 11:42 AM
Subject: RE: Traitement d'exceptions


Ce code g�re justement de fa�on DIFFERENTE les deux exceptions. Pour
effectuer un m�me traitement :
a) soit on catche la superclasse commune des deux exceptions : mais ici
c'est pas g�nial car la seule
classe commune est java.lang.Exception, trop g�n�rale.

Ou alors on peut catcher un Exception et tester son type :

try
{
}

catch(Exception e)
{
    if (e instanceof IOException || e instanceof NullPointerException) ...
}



 -----Message d'origine-----
De : Eric MOREL [mailto:[EMAIL PROTECTED]]
Envoy� : mardi 14 mai 2002 11:21
� : [EMAIL PROTECTED]
Objet : Re: Traitement d'exceptions


Bonjour,

Ce code ne fait pas ce que tu cherches ?

 try
    {
        ...
    }
    catch( IOException ioe )
    {
        TraiterErreur();
    }
    catch( NullPointerException npe )
    {
        TraiterErreur();
    }
    finally ...

Eric

Répondre à