1111 Gestion des exceptions. 11-2 Objectifs À la fin de ce cours, vous serez capables de : • Expliquer les concepts de base de la gestion des exceptions.

Slides:



Advertisements
Présentations similaires
Réaliser en Java un programme client d’une Base de Données
Advertisements

Sérialisation des objets
Spécialisation/généralisation Héritage Polymorphisme
Le mécanisme des exceptions
Gestion des événements (suite)
SI3 MAM3 Hydro Nathan Cohen Igor Litovsky Christophe Papazian
Introduction à la Programmation Orientée Objet Retour sur les principaux concepts SI3 MAM3 Hydro Nathan Cohen
La classe String Attention ce n’est pas un type de base. Il s'agit d'une classe défini dans l’API Java (Dans le package java.lang) String s="aaa"; // s.
gestion des exceptions
Programmation Web Les JSP.
Plan du cours La sérialisation: – comment stocker et restaurer les Objets? Les interfaces graphiques et la programmation évènementielle. –Comment concevoir.
Dernière scéance: Des question?????? + Deux exercices.
Les technologies XML Cours 3 : Les APIS XML Janvier Version 1.0 -
Programmer en JAVA par Tama
Algorithme et structure de données
LICENCE MIAGE Introduction Programmation Orientée Objet JAVA philippe
Tarak Chaari, Stéphane Frénot, Frédérique Laforest, Frédéric Le-Mouël JAV1 JAV – TD 5 Lhéritage en Java.
1 Le mécanisme des exceptions Qu'est-ce qu'une exception? Comment définir et signaler des exceptions? Comment récupérer des exceptions?
Jérôme CUTRONA PHP objet Jérôme CUTRONA 01:08:01 Programmation Web
Traitement des erreurs en Java
Javascript les spécificités du langage - Partie 7 -
Tests Programmation par contrats
Introduction à la programmation (420-PK2-SL) cours 12 Gestion des applications Technologie de linformation (LEA.BW)
COURS DE PROGRAMMATION ORIENTEE OBJET :
44 Contrôle du déroulement du programme. 4-2 Objectifs A la fin de ce cours, vous serez capables de : Utiliser les constructions de prise de décision.
Les méthodes en java Une méthode est un regroupement d’instructions ayant pour but de faire un traitement bien précis. Une méthode pour être utilisée.
Écouteurs de click d'une fenêtre
Langage Oriente Objet Cours 4.
Les exceptions. Quest ce quune exception ? Une erreur dans le programme Due à un bug ou un cas « anormal » Gestion complète en java : JVM Dans dautre.
Chapitre VII Généricité. POO-L3 H. Fauconnier2 Chapitre VII 1. Principes généraux 2. Types génériques imbriqués 3. Méthodes génériques 4. Types paramètres.
Java : Héritage & Exceptions
77 Utilisation des classes (suite). 7-2 Objectifs A la fin de ce cours, vous serez capables de : Définir des méthodes surchargées dans une classe Fournir.
Classes abstraites et Interfaces
F Copyright © Oracle Corporation, Tous droits réservés. Créer des programmes avec Procedure Builder.
Rappels sur la Programmation java
Page de garde C++ Les exceptions Maîtrise dinformatique Février 2002.
66 Utilisation des classes et des objets. 6-2 Objectifs A la fin de ce cours, vous serez capables de : Créer de nouvelles classes à laide de Eclipse Utiliser.
Gestion et levée dexception. Une exception est un message envoyé par une méthode à une autre méthode. La méthode qui la reçoit a le choix de soccuper.
Programmation concurrente
IFT 6800 Atelier en Technologies d’information
1 IFT 6800 Atelier en Technologies dinformation Le langage de programmation Java chapitre 3 : Classes et Objects.
Cours 8 (18 novembre 2011) exceptions. héritagePOO-L3 H. Fauconnier2 Tableau et héritage Y[] yA=new Y[3]; X[] xA=yA; //ok xA[0]=new Y(); xA[1]=new X();
COURS DE PROGRAMMATION ORIENTEE OBJET :
CSI1502 Principes fondamentaux en conception des logiciels Chapter 8: Gestion des exceptions.
99 Réutilisation du code grâce à l'héritage. 9-2 Objectifs À la fin de ce cours, vous serez capables de : Définir l'héritage Utiliser l'héritage pour.
1212 Entrée et sortie de fichiers Objectifs À la fin de ce cours, vous serez capables de : • Lire à partir de la console • Écrire sur la console.
Objectifs À la fin de ce cours, vous serez capables de :
Exceptions B. Liskov, Program Development in Java, chap. 4 Exceptions.
LIFI-Java 2004 Séance du Mercredi 22 sept. Cours 3.
Cours 9 Exceptions (fin) Généricité. POO-L3 H. Fauconnier2 Chaînage d'exceptions  Une exception peut être causée par une autre.  il peut être utile.
GESTION ET TRAITEMENT DES ERREURS
Java : Exceptions H Batatia. 5/03/2004Java12: H.Batatia2 Exemple 1 public class Bonjour { public static void main(String[] args) { System.out.println("Bonjour.
11/04/ L'héritage Cours 7 Cours 7.
Cours 7 Classes locales Clonage Divers: tableaux.
Master 1 SIGLIS Java Lecteur Stéphane Tallard Chapitre 6 – Exceptions.
CEG3585/CEG3555 Tutorat 2 Hi ver 2013.
Master 1 SIGLIS Java Lecteur Stéphane Tallard Les erreurs communes en Java.
Tutorat en bio-informatique
12/04/ Les exceptions Cours 11 Cours 11.
Entrées / Sorties.
Les sockets.
Schéma de conception Factory Method Exemple Sylvain Giroux.
Cours du 5 novembre.
Cours 4 (14 octobre) Héritage. Chapitre III Héritage.
6ième Classe (Mercredi, 17 novembre) CSI2572
Héritage Conception par Objet et programmation Java
M2 – MIAGE/SID Servlet et session M2 – MIAGE/SID
Traitement des erreurs en Java: les exceptions
1 Complément JAVA les assertions. 2 lan Tests et erreurs Assertions en Java Utilisation Bonne pratique des assertions.
1 COURS DE PROGRAMMATION ORIENTEE OBJET : Exceptions.
Transcription de la présentation:

1111 Gestion des exceptions

11-2 Objectifs À la fin de ce cours, vous serez capables de : • Expliquer les concepts de base de la gestion des exceptions • Ecrire le code permettant de récupérer et gérer des exceptions • Ecrire le code permettant de générer des exceptions • Créer vos propres exceptions À la fin de ce cours, vous serez capables de : • Expliquer les concepts de base de la gestion des exceptions • Ecrire le code permettant de récupérer et gérer des exceptions • Ecrire le code permettant de générer des exceptions • Créer vos propres exceptions

11-3 Qu'est-ce qu'une exception ? Une exception est un événement imprévu.

11-4 Comment Java gère-t-il les exceptions ? • Une méthode génère une exception. • Un gestionnaire récupère l'exception. • Une méthode génère une exception. • Un gestionnaire récupère l'exception. Objet d'exception OuiNon Gestionnaire pour cette exception ?

11-5 Avantages des exceptions Java : le code de gestion des erreurs est un code distinct • En programmation traditionnelle, la gestion des erreurs complique souvent la lecture du code. • Java distingue la gestion des erreurs imprévues des travaux principaux du programme. • Le code ainsi obtenu est plus lisible et mieux protégé contre les bogues. • En programmation traditionnelle, la gestion des erreurs complique souvent la lecture du code. • Java distingue la gestion des erreurs imprévues des travaux principaux du programme. • Le code ainsi obtenu est plus lisible et mieux protégé contre les bogues.

11-6 Avantages des exceptions Java : les erreurs remontent vers la pile d'appels method4 method3 method2 method1 //handle error Code d'erreur method4 method3 method2 Method1 //handle ex Exception ex Chaque méthode vérifie les erreurs et renvoie un code d'erreur à sa méthode appelante. method4 génère une exception ; method1 la récupère. Gestion traditionnelle des erreurs Exceptions Java Code d'erreur

11-7 Avantages des exceptions Java : les exceptions ne peuvent pas être ignorées Gestion traditionnelle des erreurs Si method3 ignore l'erreur, celle-ci ne sera jamais gérée. method4 method3 method2 method1 //handle error Code d'erreur method4 method3 method2 Method1 //handle ex Exception ex Exceptions Java L'exception doit être récupérée et gérée quelque part.

11-8 Exceptions vérifiées, exceptions non vérifiées et erreurs Toutes les erreurs et exceptions étendent la classe Throwable. Throwable ErrorException Erreurs non réparables Exceptions vérifiées Exceptions (d'exécution) non vérifiées RuntimeException

11-9 Que faire avec une exception ? • Récupérer l'exception et la gérer. • Laisser l'exception passer à la méthode appelante. • Récupérer l'exception et générer une exception différente. • Récupérer l'exception et la gérer. • Laisser l'exception passer à la méthode appelante. • Récupérer l'exception et générer une exception différente.

11-10 Récupération et gestion d'une exception • Insérez l'appel de méthode dans un bloc try. • Gérez chacune des exceptions dans un bloc catch. • Effectuez les derniers traitements dans un bloc finally. • Insérez l'appel de méthode dans un bloc try. • Gérez chacune des exceptions dans un bloc catch. • Effectuez les derniers traitements dans un bloc finally. try { // call the method } catch (exception1) { // handle exception1 } catch (exception2) { // handle exception2 }… finally { // any final processing }

11-11 Récupération d'une seule exception int qty; String s = getQtyFromForm(); try { // Might throw NumberFormatException qty = Integer.parseInt(s); } catch ( NumberFormatException e ) { // Handle the exception } // If no exceptions were thrown, we end up here

11-12 Récupération de plusieurs exceptions try { // Might throw MalformedURLException URL u = new URL(str); // Might throw IOException URLConnection c = u.openConnection(); } catch (MalformedURLException e) { System.err.println("Could not open URL: " + e); } catch (IOException e) { System.err.println("Could not connect: " + e); }

11-13 Nettoyage avec un bloc finally FileInputStream f = null; try { f = new FileInputStream(filePath); while (f.read() != -1) charcount++; } catch(IOException e) { System.out.println("Error accessing file " + e); } finally { // This block is always executed f.close(); }

11-14 Récupération et gestion d'une exception : exercice pratique void makeConnection(String url) { try { URL u = new URL(url); } catch (MalformedURLException e) { System.out.println("Invalid URL: " + url); return; } finally { System.out.println("Finally block"); } System.out.println("Exiting makeConnection"); }

11-15 Récupération et gestion d'une exception : exercice pratique void myMethod () { try { getSomething(); } catch (IndexOutOfBoundsException e1) { System.out.println("Caught IOBException "); } catch (Exception e2) { System.out.println("Caught Exception "); } finally { System.out.println("No more exceptions "); } System.out.println("Goodbye"); }

11-16 Passage d'une exception à la méthode appelante • Utilisez throws dans la déclaration de méthode. • L'exception se propage sur la méthode appelante. • Utilisez throws dans la déclaration de méthode. • L'exception se propage sur la méthode appelante. public int myMethod() throws exception1 { // code that might throw exception1 } public URL changeURL(URL oldURL) throws MalformedURLException { return new URL(" }

11-17 Génération d'une exception • Utilisez le mot-clé throw pour générer des exceptions. • Utilisez throws dans la déclaration de méthode. • Utilisez le mot-clé throw pour générer des exceptions. • Utilisez throws dans la déclaration de méthode. public String getValue(int index) throws IndexOutOfBoundsException { if (index == null || index >= values.length) { throw new IndexOutOfBoundsException(); } … } throw new Exception1();

11-18 Création d'une exception Étendez la classe Exception. public class UserFileException extends Exception { public UserFileException (String message) { super(message); } } public class exception1 extends Exception { … }

11-19 Récupération d'une exception et génération d'une exception différente catch (exception1 e) { throw new exception2(…); } void ReadUserFile throws UserFileException { try { // code to open and read userfile } catch(IOException e) { throw new UserFileException(e.toString()); }

11-20 Résumé Durant ce cours, vous devriez avoir retenu que : • Vous pouvez utiliser des exceptions Java pour assurer une gestion robuste des erreurs. • Vous pouvez gérer des exceptions avec try, catch et finally. • Vous pouvez utiliser le mot-clé throw pour générer une exception. • Une méthode peut déclarer une exception dans sa signature pour la faire remonter vers la pile d'appels. Durant ce cours, vous devriez avoir retenu que : • Vous pouvez utiliser des exceptions Java pour assurer une gestion robuste des erreurs. • Vous pouvez gérer des exceptions avec try, catch et finally. • Vous pouvez utiliser le mot-clé throw pour générer une exception. • Une méthode peut déclarer une exception dans sa signature pour la faire remonter vers la pile d'appels.