HTML Tutorials |
|
XML Tutorials |
|
Browser Scripting |
|
Server Scripting |
|
.NET (dotnet) |
|
Multimedia |
|
Web Building |
|
Java Tutorials |
|
Programming Langauges |
|
Soft Skills |
|
Database Tutorials |
|
Operating System |
|
Software Testing |
|
SAP Module |
|
Networking Programming |
|
Microsoft Office |
|
Accounting |
|
|
Erreurs et exceptions dans Java |
La langue de Java font des exceptions d'utilisation pour fournir les possibilit�s de gestion d'erreur pour tous ses programmes. Voici que toi apprendront ce qui fait un moyen d'exception, comment jeter et attraper les exceptions, quoi faire � l'exception une fois que vous l'avez attrap�e, et comment faire la meilleure utilisation de la hi�rarchie de classe d'exception fournie par l'environnement de d�veloppement de Java.
|
Quelle est une exception ?
|
D�finition : Une exception est un �v�nement qui se produit pendant l'ex�cution du programme qui perturbe l'�coulement normal des instructions. Les diff�rents types d'erreurs peuvent causer des exceptions : les probl�mes qui s'�tendent des erreurs machine s�rieuses, telles que l'accident de disque dur, aux erreurs de programmation simples, comme l'essai d'acc�der au dehors-de-bondit l'�l�ment de rang�e. Quand une telle erreur se produit dans une m�thode de Java, la m�thode cr�era un objet et des mains d'exception il au syst�me d'ex�cution. L'objet d'exception contient les informations sur l'exception comprenant son type et �tat du programme quand l'erreur s'est produite. Le syst�me d'ex�cution est alors responsable pour trouver un certain code pour manipuler l'erreur. Dans la terminologie de Java, cr�ant l'objet d'exception et le remettant au syst�me d'ex�cution s'appelle � lancement d'une exception �.
|
Le crochet de Hotjava ou d�clarent la condition
|
import java.io.*;
import java.util.Vector;
class ListOfNumbers
{
private Vector victor;
final int size = 10;
public ListOfNumbers ()
{
int i;
victor = new Vector(size);
for (i = 0; i < size; i++)
victor.addElement(new Integer(i));
}
public void writeList()
{
PrintStream pStr = null;
System.err.println("Entering try statement");
int i;
pStr = new PrintStream(
new BufferedOutputStream(
new FileOutputStream("OutFile.txt")));
for (i = 0; i < size; i++)
pStr.println("Value at: " + i + " = " + victor.elementAt(i));
pStr.close();
}
}
|
|
L'exemple ci-dessus d�finit et met en application la classe appel�e � ListOfNumbers �. Lors de la construction, la classe de ListOfNumbers cr�e un vecteur qui contient dix �l�ments de nombre entier avec les valeurs s�quentielles 0 � 9. La classe de ListOfNumbers d�finit �galement la m�thode � writeList () � qui �crit la liste de nombres dans le dossier � OutFile.txt � des textes. La m�thode de writeList () appelle deux m�thodes suppl�mentaires qui peuvent jeter des exceptions.
|
First,
pStr = new PrintStream(new BufferedOutputStream(new FileOutputStream("OutFile.txt")));
|
|
Cette ligne appelle le constructeur pour FileOutputStream qui jette un IOException quand le dossier ne peut pas �tre ouvert pour la raison l'une des.
|
Second, the Vector class's elementAt() method
pStr.println("Value at: " + i + " = " + victor.elementAt(i));
|
|
Cette m�thode jettera ArrayIndexOutOfBoundsException si vous passez un index dont la valeur est tr�s petite (nombre n�gatif) ou tr�s grande (plus grand que le nombre d'�l�ments contenus par le vecteur actuellement).
|
Si vous essayez de compiler la classe de ListOfNumbers, le compilateur imprime le message d'erreur au sujet d'une exception jet�e par le constructeur de FileOutputStream, mais il ne montrera pas le message d'erreur au sujet d'une exception jet�e par l'elementAt (). C'est parce que l'exception jet�e par le constructeur de FileOutputStream, IOException, est exception de non-temps d'ex�cution et l'exception jet� par la m�thode d'elementAt (), ArrayIndexOutOfBoundsException, est l'exception d'ex�cution. Java exige seulement pour attraper ou d�clarer des exceptions de non-temps d'ex�cution.
|
Attraper et manipuler une exception
|
La premi�re �tape pour construire un traiteur d'exception est de joindre les rapports qui pourraient jeter l'exception dans le bloc d'essai. G�n�ralement regards de bloc d'essai n'importe quoi de pareil :
|
|
Le segment � rapports de Java � dans le code ci-dessus consiste un ou plusieurs rapports l�gaux de Java qui pourraient potentiellement jeter une exception. Pour construire le traiteur d'exception pour la m�thode de writeList () de la classe de ListOfNumbers, nous devons joindre les rapports de exception-lancement de la m�thode de writeList () dans le bloc d'essai. Il y a plus de les mani�res une d'accomplir ceci chargent : nous pouvons mettre chaque rapport qui peut potentiellement jeter l'exception dans son propre rapport d'essai, et fournissons les traiteurs s�par�s d'exception pour chacun de l'essai. Ou vous pouvez mettre tous rapports de writeList () dans le rapport simple d'essai et associer les traiteurs multiples � lui. L'exemple suivant emploie le rapport simple d'essai pour la m�thode enti�re pendant qu'il tend � �tre plus facile lire le code.
|
PrintStream pstr;
try
{
int i;
System.err.println("Entering try statement");
pStr = new PrintStream(
new BufferedOutputStream(
new FileOutputStream("OutFile.txt")));
for (i = 0; i < size; i++)
pStr.println("Value at: " + i + " = " + victor.elementAt(i));
}
|
|
Le rapport d'essai r�git les rapports joints dans lui et il d�finit la port�e de tous les traiteurs d'exceptions (qui sont �tablis par les blocs suivants de crochet) li�s � lui. En d'autres termes, si une exception se produit dans le rapport d'essai, puis que l'exception est manipul�e par un certain traiteur appropri� d'exception qui est associ� � ce rapport d'essai.
|
Les blocs de crochet
|
Comme �tudi� avant, le rapport d'essai d�finit la port�e des traiteurs associ�s d'exception. Nous associons des traiteurs d'exception � un rapport d'essai en fournissant un ou plusieurs des blocs s�quentiels de crochet directement apr�s qu'un bloc d'essai.
|
try
{
. . .
} catch ( . . . )
{
. . .
} catch ( . . . )
{
. . .
} . . .
|
|
Il ne peut y avoir aucun code intervenant entre la fin du rapport d'essai et le commencement du premier rapport de crochet. La forme g�n�rale de rapport de crochet est :
|
catch (SomeThrowableClassName variableName)
{
Java statements
}
|
|
Le rapport de crochet r�git la s�rie de rapports l�gaux de Java. Ces rapports sont ex�cut�s quand le traiteur d'exception est appel�. Le syst�me d'ex�cution appelle le traiteur d'exception quand une exception dont le type matchs avec cela de l'argument du rapport de crochet est jet� dans le bloc de l'essai du traiteur.
|
La m�thode de writeList () de la classe de ListOfNumbers emploie deux traiteurs d'exception pour le rapport d'essai, un traiteur pour chacun des deux types d'exceptions qui peuvent �tre jet�es dans un bloc, un ArrayIndexOutOfBoundsException et un IOException d'essai.
|
try
{
. . .
} catch (ArrayIndexOutOfBoundsException e)
{
System.err.println("Caught ArrayIndexOutOfBoundsException: " + e.getMessage());
} catch (IOException e)
{
System.err.println("Caught IOException: " + e.getMessage());
}
|
|
|
|
Keywords: unchecked exceptions, exception classes, exception handling,
exception class
|
|
HTML Quizes |
|
XML Quizes |
|
Browser Scripting Quizes |
|
Server Scripting Quizes |
|
.NET (dotnet) Quizes |
|
Multimedia Quizes |
|
Web Building Quizes |
|
Java Quizes |
|
Programming Langauges Quizes |
|
Soft Skills Quizes |
|
Database Quizes |
|
Operating System Quizes |
|
Software Testing Quizes |
|
SAP Module Quizes |
|
Networking Programming Quizes |
|
Microsoft Office Quizes |
|
Accounting Quizes |
|
|