TP de Java Exceptions et E/S. catch (IOException ioe) { System.out.println(" E/S problem :" + ioe);

Save this PDF as:
 WORD  PNG  TXT  JPG

Dimension: px
Commencer à balayer dès la page:

Download "TP de Java Exceptions et E/S. catch (IOException ioe) { System.out.println(" E/S problem :" + ioe);"

Transcription

1 TP de Java Exceptions et E/S Sujets abordés dans ce TP : Bloc try/catch/finally Déclenchement d exception Redéfinition d exception Taxonomie des exceptions Gestion de fichiers Tokenizer 1) Les erreurs et les exceptions Introduction catch (IOException ioe) { System.out.println(" E/S problem :" + ioe); catch (NumberFormatException nfe) { System.out.println(" NumberFormat problem " + nfe); finally { System.out.println("#4"); Durant l exécution d un programme, il peut se produire des événements anormaux (et inattendus) comme par exemple : un utilisateur pourrait écrire un nom de fichier inadmissible, un dossier pourrait contenir des données corrompues, etc. On peut prendre en compte des circonstances de ce type en Java via les mécanismes d exception. Un sous-arbre de la hiérarchie de classes, ayant pour classe racine la classe java.lang.throwable, y est consacré. Aider vous de la documentation de ce package dans l API specification afin d analyser les différents exemples durant ce TP. En Java, la gestion des exceptions se fait via l emploi d une structure de type try/catch/finally. L exemple suivant donne une première implémentation d exception pour la lecture d un fichier texte, et le résultat commenté de l exécution de cet exemple. import java.io.fileinputstream; public class Tp3_ex1 { String filename = "todo.txt"; String nstring = "10"; FileInputStream fis; System.out.println("#1"); fis = new FileInputStream(fileName); System.out.println("#2"); Si todo.txt existe et nstring est un nombre entier alors la sortie de ce programme est : #1 #2 #3 #4 Si le fichier de nom contenu dans la String filename n existe pas alors la sortie de ce programme est : #1 E/S problem :java.io.filenotfoundexception: todo.txt (Le fichier spécifié est introuvable) #4 Si la chaîne de caractères nstring n est pas un nombre entier alors : #1 #2 NumberFormat problem java.lang.numberformatexception: For input string: "10sd" #4 Conclusions: - une exception produite dans le bloc «try» est manipulée par la clause «catch» assortie - quand une exception est produite tout le code dans le bloc d'essai après l'endroit où l'exception a eu lieu n'est pas exécuté. - «finally» est toujours exécuté Integer n = new Integer(nString); System.out.println("#3"); 1

2 Première mise en œuvre La forme la plus générale de l implémentation du bloc try/catch/finally est: // instructions : // certaines sont sûres, certaines pourraient déclencher //des exceptions catch (SpecificException e) { // faites quelque chose pour SpecificException, //peut-être un essai pour récupérer les données // qui pourraient être perdues catch (OtherException e) // faites quelque chose pour OtherException catch (GeneralException e) { // faites quelque chose pour GeneralException finally { // code qui doit être exécuté que l exception ait été // déclenchée ou non Remarque : «finally» est facultatif. Implémenter et mettre en oeuvre le code suivant, commenter. int a; try {a=1; a= 1/0; catch(exception e) {System.out.println("Number Exception"); finally {a=-1; System.out.println(a); Déclencher des exceptions Nous continuerons dans cette partie du TP en examinant comment des exceptions peuvent être déclenchées. En effet, dans une application c est l analyse des données véhiculées qui peut conduire cette application à déclencher une ou des exception(s). Dans ce cas, le programmeur Java aura recours à l instruction throw : throw new Exception(); Il existe deux moyens d utiliser l instruction trow : 1. dans un bloc try, 2. dans une méthode déclarée comme susceptible de déclencher une/des exception(s) à l aide du mot clé throws. Implémenter et mettre en œuvre le code suivant, commenter : import java.io.*; class Test1 { void test1() { throw new Exception(); catch(exception e) {System.out.println("first exception a"); void test2() throws Exception{ throw new Exception(); public class Except { public static void main(string args[]) { new Test1().test1(); new Test1().test1(); catch(exception e) {System.out.println("first exception b"); Dans l exemple précédent, vous avez vu qu une méthode susceptible de déclencher des exceptions se doit de les déclarer à l aide du mot clé throws. Il possible pour une méthode de déclarer plusieurs types d exceptions de la manière suivante : public int monmethode()throws IOException, MonException1,MonException2 { 2

3 throw new IOException( quelque-chose ); Définir des exceptions L API specification permet d utiliser un ensemble d exceptions standards. Il est cependant possible pour le programmeur Java de définir ses propres exceptions. Pour cela, il doit définir une classe héritant de classe Exception. Implémenter et mettre en oeuvre l exemple suivant, commenter : Taxonomie des exceptions Les exceptions en Java sont définies selon une certaine taxonomie. La figure suivante présente cette taxonomie, vous pouvez consulter le package java.lang dans l API specification pour plus de détails. import java.io.*; class CompteException extends Exception{ String motif; CompteException(String s) { super(s); motif=s; public class Tp3_ex2 { private int compte; Tp3_ex2(int montant) { this.compte = montant; void retireargeant(int montant) throws CompteException { if (montant > compte) { throw new CompteException("Possibilités de retrait épuise"); else {compte = compte - montant; Tp3_ex2 compte1 = new Tp3_ex2(1000); compte1.retireargeant(2000); catch (CompteException ce) {ce.printstacktrace(); 1. Les exceptions «vérifiées» (checked) traitent des problèmes qui peuvent surgir dans un programme considéré comme «valide». Typiquement, ce type d exception concerne : les problèmes d installation de package, les erreurs utilisateurs, les problèmes de lecture/écriture, etc. Un certains nombre de classes standards existent comme les classes : IOException, ClassNotFoundException, etc. 2. Les exceptions d'exécutions (runtime) traitent typiquement les bogues apparaissant durant l exécution des programmes. Un problème type est celui de l accès à des données non allouées au sein d un tableau (ou dépassement d indice). Dans un programme correctement implémenté, ce type d exception devrait en théorie ne jamais se produire. Un certain nombre de classes standards existent comme les classes : NumberFormatException, NullPointerException, ArrayIndexOutOfBoundsException, etc. 3. Les exceptions d erreurs (error) traitent les problèmes atypiques qui ne peuvent être associés aux deux premières catégories d exceptions. Ces problèmes peuvent concerner des bogues d exécution, mais traitent le plus souvent des problèmes systèmes comme le dépassement de mémoire. Un certains nombre de classes standards existent comme les classes : OutOfMemoryError, StackOverflowError, etc. 3

4 L exemple suivant met en œuvre ces différentes exceptions, implémenter le : import java.io.fileinputstream; public class Tp3_ex3 { public static void main(string args[]) { int x = 1;//-1 int y = 1;//0 int z[]= new int[3]; // Runtime Exceptions System.out.println(" x/y="+(x/y)); System.out.println(" z[x]="+z[x]); // Checked Exception try{ FileInputStream f = new FileInputStream("todo.txt"); catch(ioexception ioe) { ioe.printstacktrace(); // Error int M = ; Double[] d = new Double[M]; Le mettre en oeuvre de la façon suivante, commenter : Si y == 0 alors la sortie contient : java.lang.arithmeticexception: / by zero C'est une Runtime Exception. 2) Classes d entrée et de sortie Introduction Dans cette partie nous présentons quelques classes standards Java pour l accès de données en entrée/sortie de vos programmes. Ces classes traitent donc de problèmes susceptibles de déclencher des exceptions, elles s appuient sur les notions présentées en première partie de ce TP. Classe java.io.file La classe java.io.file représente le nom d'un dossier ou d'un fichier qui pourrait exister sur le système de fichiers de l'ordinateur. Ses méthodes principales pour la navigation sont : boolean exists() boolean isdirectory() boolean isfile() String[] list() Quelques méthodes de non-navigation sont : boolean delete() boolean mkdir() Implémenter et mettre en oeuvre l exemple suivant, commenter : import java.io.file; public class Tp3_ex4 { String name = "todo.txt"; File f = new File(name); System.out.println("f.exists()" + f.exists()); System.out.println("f.isDirectory()" + f.isdirectory()); Si y!=0 && x== -1 par example la sortie contient: java.lang.arrayindexoutofboundsexception: -1 C est une Runtime Exception. Si (y!=0)&&(x>=0)&&(x<3) mais n existe pas un fichier avec le nomme todo.txt alors : java.io.filenotfoundexception: todo.txt (Le fichier spécifié est introuvable) C est une Checked Exception. Si y et x sont ok et todo.txt existe alors la sortie contient : java.lang.outofmemoryerror C est une Error. if (f.isdirectory()) { String[] list = f.list(); for (int i = 0; i < list.length; i++) { System.out.println(" " + list[i]); 4

5 Classe java.io.randomaccessfile La classe java.io.randomaccessfile permet de chercher dans une position désirée dans un fichier, et alors lire ou écrire une quantité désirée de données. Implémenter et mettre en oeuvre l exemple suivant, commenter : import java.io.file; import java.io.randomaccessfile; public class Tp3_ex5 { File f = new File("nomFichier"); RandomAccessFile raf = new RandomAccessFile(f, "rw"); char ch = raf.readchar(); raf.seek(f.length()); raf.writechars("astring"); raf.close(); catch (IOException e) { e.printstacktrace(); Classe java.io.bufferedreader Implémenter et mettre en oeuvre l exemple suivant pour la lecture de données au clavier, commenter : import java.io.bufferedreader; import java.io.inputstreamreader; public class Tp3_ex6 { BufferedReader in = new BufferedReader( new InputStreamReader(System.in)); String str = ""; while (str!= null) { System.out.print("> prompt "); str = in.readline(); System.out.println(str); catch (IOException e) {e.printstacktrace(); Implémenter et mettre en oeuvre l exemple suivant pour la lecture d un fichier texte, commenter : import java.io.bufferedreader; import java.io.filereader; public class Tp3_ex7 { BufferedReader in = new BufferedReader( new FileReader("todo.txt")); String str; While ((str = in.readline())!= null) {System.out.println(""+str); in.close(); catch (IOException e) {e.printstacktrace(); Classe java.util.stringtokenizer La «tokenization» permet de décomposer une chaîne de caractères donnée selon des tokens donnés. Considérons que nous lisons une ligne de ce type : bx 20 ax 10 5

6 La décomposition en tokens de cette chaîne a pour but de trouver «bx» et «ax» et les numéros 10 et 20. Implémenter et mettre en oeuvre l exemple suivant, commenter : import java.util.stringtokenizer; public class Tp3_ex8 { String astring = "mot1 mot2 mot3"; StringTokenizer parser = new StringTokenizer(aString); while (parser.hasmoretokens()) { System.out.println(parser.nextToken()); Classe java.io.bufferedwriter Implémenter et mettre en oeuvre l exemple suivant, commenter : import java.io.bufferedwriter; import java.io.filewriter; public class Tp3_ex9 { BufferedWriter out = new BufferedWriter(new FileWriter("outfilename")); out.write("astring"); out.close(); catch (IOException e) {e.printstacktrace(); 6

POO LES EXCEPTIONS LES EXCEPTIONS

POO LES EXCEPTIONS LES EXCEPTIONS CHAPITRE 7 : LES EXCEPTIONS Objectifs spécifiques 1. Introduire la notion d exception, les règles d utilisation et de définition des exceptions. 2. Distinguer entre les exceptions prédéfinies et les exceptions

Plus en détail

Les exceptions. Cours 12. vous les avez pratiquées sans le savoir... ArrayIndexOfBoundsException NullPointerException ClassNotFoundException...

Les exceptions. Cours 12. vous les avez pratiquées sans le savoir... ArrayIndexOfBoundsException NullPointerException ClassNotFoundException... Cours 12 Les exceptions vous les avez pratiquées sans le savoir... ArrayIndexOfBoundsException NullPointerException ClassNotFoundException... F.Gayral 1 Les exceptions, vous connaissez... public class

Plus en détail

Cours 8 : Exceptions, un peu de graphique

Cours 8 : Exceptions, un peu de graphique 1 Cours 8 : Exceptions, un peu de graphique 1. Traiter les exceptions usuelles 2. Créer ses propres exceptions 3. Exemples: les files. 4. Quelques éléments sur les graphiques 2 Exceptions Une exception

Plus en détail

Exceptions. Fiabilité d un logiciel. Fiabilité en Java. Erreurs/exceptions. Localisation du traitement des erreurs/exceptions.

Exceptions. Fiabilité d un logiciel. Fiabilité en Java. Erreurs/exceptions. Localisation du traitement des erreurs/exceptions. Fiabilité d un logiciel Exceptions Université Française d Egypte Version O 5.7 5/10/15 Richard Grin Robustesse : fonctionne correctement, même en présence d événements exceptionnels Correction : donne

Plus en détail

LMI 2. Programmation Orientée Objet POO - Cours 7. Said Jabbour. jabbour@cril.univ-artois.fr www.cril.univ-artois.fr/~jabbour

LMI 2. Programmation Orientée Objet POO - Cours 7. Said Jabbour. jabbour@cril.univ-artois.fr www.cril.univ-artois.fr/~jabbour LMI 2 Programmation Orientée Objet POO - Cours 7 Said Jabbour jabbour@cril.univ-artois.fr www.cril.univ-artois.fr/~jabbour CRIL UMR CNRS 8188 Facult e des Sciences - Univ. Artois Janvier 2011 Exceptions

Plus en détail

La Gestion des Exceptions

La Gestion des Exceptions La Gestion des Exceptions Les exceptions Les exceptions représentent le mécanisme de gestion des erreurs intégré au langage Java. Il se compose d'objets représentant les erreurs et d'un ensemble de troismotsclésquipermettentdedétecteretdetraiterceserreurs(try,

Plus en détail

2. lancer (throw) une exception consiste à la signaler

2. lancer (throw) une exception consiste à la signaler Cours 7 Exceptions 1 1. Une exception est un signal qui indique que quelque chose d'exceptionnel (par exemple une erreur) s est produite qui interrompt le flot d exécution normal du programme 2. lancer

Plus en détail

Programmation Orientée Objet. Exceptions et assertions

Programmation Orientée Objet. Exceptions et assertions Programmation Orientée Objet Exceptions et assertions Julien Provillard http://www.i3s.unice.fr/~provilla/poo/ julien.provillard@unice.fr Robustesse et Exceptions Error, RuntimeException Exceptions (non)

Plus en détail

Université Mohammed Premier Année universitaire 2012-2013

Université Mohammed Premier Année universitaire 2012-2013 Université Mohammed Premier Année universitaire 2012-2013 Faculté des Sciences Filière SMI Département de Mathématiques Module : POO Java et d Informatique Semestre : S5 Responsable du cours : El Mostafa

Plus en détail

Plan. Conseils de Programmation. Types et Classes. Exemple: fraction. Méthodes. Variables locales:

Plan. Conseils de Programmation. Types et Classes. Exemple: fraction. Méthodes. Variables locales: Plan Conseils de Programmation Joël Quinqueton Dépt MIAp, UFR IV UPV Université Montpellier III Types et classes Un exemple de classe Les erreurs en Java L héritage en Java Types primitifs Tableaux Classes:

Plus en détail

Les exceptions en Java

Les exceptions en Java Chapitre 6 Les exceptions en Java Lorsqu on conçoit un programme, on essaie évidemment qu il soit correct, c est-à-dire qu il fonctionne parfaitement dans les conditions prévues de son utilisation. L utilisateur

Plus en détail

Objectifs du cours: Gestion des exceptions. CSI1502 Principes fondamentaux en conception des logiciels. Prise en charge d`exception en Java

Objectifs du cours: Gestion des exceptions. CSI1502 Principes fondamentaux en conception des logiciels. Prise en charge d`exception en Java CSI1502 Principes fondamentaux en conception des logiciels Chapter 8: Gestion des exceptions Objectifs du cours: Gestion des exceptions Comprendre ce qui suit: Le fonctionnement de «try-catch» Propagation

Plus en détail

Les exceptions en java

Les exceptions en java 1/12 Les exceptions en java 2/12 C'est quoi une exception? Une exception est un événement (une erreur) qui se produit lors de l'exécution d'un programme, et qui va provoquer un fonctionnement anormal (par

Plus en détail

Les classes du JDK. Les types composites TD/TP-4. Le paquet java.lang. Les autres paquets. Les classes du JDK et les types composites Page 1 sur 15

Les classes du JDK. Les types composites TD/TP-4. Le paquet java.lang. Les autres paquets. Les classes du JDK et les types composites Page 1 sur 15 Les classes du JDK et les types composites Page 1 sur 15 Les classes du JDK et les types composites Page 2 sur 15 Pour affecter une valeur à une variable simple, if suffit d utiliser les lignes suivantes:

Plus en détail

Programmer avec les exceptions en Java

Programmer avec les exceptions en Java Programmer avec les exceptions en Java Premier Cycle Cours Eurinsa 2002 (c) P.Pollet 05/12/2002 Java 2001 (PP) 1 Plan Gestion traditionnelle des erreurs d exécution Qu est-ce qu une exception? La classe

Plus en détail

Programmation Orientée Objet Java

Programmation Orientée Objet Java Programmation Orientée Objet Java Bertrand Estellon Département Informatique et Interactions Aix-Marseille Université 29 octobre 2015 Bertrand Estellon (DII AMU) Programmation Orientée Objet Java 29 octobre

Plus en détail

Programmation Java Avancée

Programmation Java Avancée Programmation Java Avancée Module RPCI01 Département R&T IUT de Villetaneuse 2 novembre 2015 Département R&T Programmation Java Avancée 2 novembre 2015 1 / 74 Plan du cours 1 La gestion des exceptions

Plus en détail

Exceptions. Qu est ce qu un cas exceptionnel? Principe : détecter le maximum d erreurs à la compilation, mais... pas toujours possible

Exceptions. Qu est ce qu un cas exceptionnel? Principe : détecter le maximum d erreurs à la compilation, mais... pas toujours possible Programmation Orientée Objet Jean-Christophe Routier Licence mention Informatique Université Lille Principe : détecter le maximum d erreurs à la compilation, mais pas toujours possible Gestion des erreurs

Plus en détail

Solutions du chapitre 14

Solutions du chapitre 14 Solutions du chapitre 14 Traitement des exceptions 14.16 Sous quelles circonstances utiliseriez-vous l instruction suivante? catch ( Exception e ) { throw e; } Cette instruction sert à capturer toute exception

Plus en détail

Université Mohammed Premier Année universitaire 2011-2012. Complément d exercices avec correction

Université Mohammed Premier Année universitaire 2011-2012. Complément d exercices avec correction Université Mohammed Premier Année universitaire 2011-2012 Faculté des Sciences Filière SMI Département de Mathématiques et d Informatique Module : POO Java Semestre : S5 Complément d exercices avec correction

Plus en détail

Les Flux : principes de base

Les Flux : principes de base Les Flux : principes de base Introduction Les flux permettent de travailler avec des données des fichiers provenant de l extérieur. Toutes les commandes de type Ouvrir, Enregistrer, Enregistrer sous des

Plus en détail

I21 Algorithmique et programmation II. David Gross-Amblard, Joël Savelli IEM-uB 2008-2009 - GFDL 1.2 CM 5/8 v2

I21 Algorithmique et programmation II. David Gross-Amblard, Joël Savelli IEM-uB 2008-2009 - GFDL 1.2 CM 5/8 v2 I21 Algorithmique et programmation II David Gross-Amblard, Joël Savelli IEM-uB 2008-2009 - GFDL 1.2 CM 5/8 v2 II. Programmation par objet 1. Motivation 2. Encapsulation 3. Héritage 4. Initiation à la modélisation

Plus en détail

Flux de données Lecture/Ecriture Fichiers

Flux de données Lecture/Ecriture Fichiers Flux de données Lecture/Ecriture Fichiers 1 Un flux de données est un objet qui représente une suite d octets d un programme pour une certaine destination ou issus d une source pour un programme flux d

Plus en détail

Programmation orientée objet TP 1 Prise en main de l environnement Java

Programmation orientée objet TP 1 Prise en main de l environnement Java Programmation orientée objet TP 1 L2 MPCIE Prise en main de l environnement Java Exercice 1 Nous désirons développer un programme pour la gestion (très simplifiée) d'un parc de véhicules destinés à la

Plus en détail

Gestion d exceptions

Gestion d exceptions Gestion d exceptions Quelques classes remarquables de JAVA Emmanuel ADAM Institut des Sciences et Techniques de Valenciennes Université de Valenciennes et du Hainaut-Cambrésis source principale : «Thinking

Plus en détail

TP programmation Internet en JAVA

TP programmation Internet en JAVA TP programmation Internet en JAVA préparé par P. Bakowski Ce TP nécessite quelques préparations du logiciel. Vous pouvez utiliser l environnement NetBeans avec le pack SDK Java SE Le site polytech2go.fr

Plus en détail

Programmation multitâches avec les Threads

Programmation multitâches avec les Threads Programmation multitâches avec les Threads A. Introduction A.1. Programmation multitâche Tous les systèmes d'exploitation actuels ont la possibilité d'effectuer plusieurs tâches en simultané. En effet,

Plus en détail

Le mécanisme d exception du langage Java

Le mécanisme d exception du langage Java Le mécanisme d exception du langage Java 1 / 39 Plan 1 Introduction aux exceptions en Java 2 Exemples de code avec gestion des exceptions 3 Créer ses propres exceptions 4 Instruction try/catch/finally

Plus en détail

Java : Les FLUX de données

Java : Les FLUX de données 1 Java : Les FLUX de données Les flux de données introduction les flux binaires les flux binaires de sortie (FBS) les flux binaires d entrée (FBE) les flux textes (FTS & FTE) les flux textes de sortie

Plus en détail

Chapitre 7. Exceptions

Chapitre 7. Exceptions Chapitre 7 Exceptions 1 Exceptions en Java Séparation exécution normale/gestion des erreurs Inspiration : C++ et Ada Un composant peut : prendre en charge le problème signaler le problème en levant une

Plus en détail

Informatique / Programmation

Informatique / Programmation Informatique / Programmation Programmation orientée objet avec Java 06 : Les exceptions et leur traitement Jacques Bapst jacques.bapst@hefr.ch Exceptions Les exceptions représentent des événements qui

Plus en détail

cours 4 : programmes fiables

cours 4 : programmes fiables cours 4 : programmes fiables généricité assertions généricité généricité généricité généricité possibilité d écrire des classes paramétrées par d autres classes permet de : écrire un code dépendant d un/de

Plus en détail

Java Avancé - Cours 1 Solution des exercices

Java Avancé - Cours 1 Solution des exercices Solution des exercices Java Avancé - Cours 1 1/6 Java Avancé - Cours 1 Solution des exercices Liste des exercices: Exercice 1.1 Q1 On utilise les deux constructeurs suivants : java.io.inputstreamreader

Plus en détail

Sérialisation sur le système de fichiers. Gestion des exceptions en Java.

Sérialisation sur le système de fichiers. Gestion des exceptions en Java. Sérialisation sur le système de fichiers. Gestion des exceptions en Java. Christophe Gravier, Frédérique Laforest, Julien Subercaze Télécom Saint-Étienne Université Jean Monnet {pnom.nom}@univ-st-etienne.fr

Plus en détail

Java Avancé. Les exceptions. Rémi Forax forax@univ-mlv.fr

Java Avancé. Les exceptions. Rémi Forax forax@univ-mlv.fr Java Avancé Les exceptions Rémi Forax forax@univ-mlv.fr 1 Les Exceptions Mécanisme qui permet de reporter des erreurs vers les méthodes appelantes. Problème en C : prévoir une plage de valeurs dans la

Plus en détail

420KEL Petite révision v. 1,65. Petite révision

420KEL Petite révision v. 1,65. Petite révision Petite révision Quelques petits exercices pour vous rafraîchir la mémoire et vous remettre en forme. Dans les exercices pour lesquels on vous demande de programmer, cherchez à produire un résultat à la

Plus en détail

Université Mohammed Premier Année universitaire 2011-2012. Correction de l examen écrit de la session ordinaire 18 Février 2012

Université Mohammed Premier Année universitaire 2011-2012. Correction de l examen écrit de la session ordinaire 18 Février 2012 Université Mohammed Premier Année universitaire 2011-2012 Faculté des Sciences Filière SMI Département de Mathématiques Module : POO Java et d Informatique Semestre : S5 Correction de l examen écrit de

Plus en détail

LES FICHIERS. 1-169169 JAVA Christine BONNET

LES FICHIERS. 1-169169 JAVA Christine BONNET 12 LES FICHIERS 1-169169 JAVA Christine BONNET LES FLOTS Package java.io La gestion des E/S s'effectue à l'aide des flots. Un stream (flot) représente un canal de communication ( écran, fichier, pipe,

Plus en détail

this Vs. static Introduction Utilisation de this

this Vs. static Introduction Utilisation de this Introduction this Vs. static Si vous avez essayé d écrire d importants programmes Java multi-classes, vous avez certainement eu des problème de communication entre plusieurs classes. Pour appeler à partir

Plus en détail

Correction langage Java

Correction langage Java MINISTÈRE DE L ÉCOLOGIE, DU DÉVELOPPEMENT DURABLE, DES TRANSPORTS ET DU LOGEMENT EXAMEN PROFESSIONNEL DE VÉRIFICATION D APTIDUDE AUX FONCTIONS DE PROGRAMMEUR Session 2010 Correction langage Java Langage:

Plus en détail

Cours 3 : Encapsulation et tests

Cours 3 : Encapsulation et tests DUT Informatique S3 - Programmation Java Jean-Claude MARTIN MARTIN@LIMSI.fr Cours 3 : Encapsulation et tests Plan Divers Paquetages : intérêt, utilisation des packages existants, créer un package Encapsulation

Plus en détail

Programmation Réseau. Sécurité Java. Jean-Baptiste.Yunes@univ-paris-diderot.fr. UFR Informatique 2012-2013. jeudi 4 avril 13

Programmation Réseau. Sécurité Java. Jean-Baptiste.Yunes@univ-paris-diderot.fr. UFR Informatique 2012-2013. jeudi 4 avril 13 Programmation Réseau Sécurité Java Jean-Baptiste.Yunes@univ-paris-diderot.fr UFR Informatique 2012-2013 Java Sécurité? différentes sécurités disponibles et contrôlables intégrité contrôle d accès signature/authentification/cryptographie

Plus en détail

Université Paris Diderot ISIFAR Année 2008-2009. Exceptions et Classes Abstraites

Université Paris Diderot ISIFAR Année 2008-2009. Exceptions et Classes Abstraites Université Paris Diderot JAVA ISIFAR Année 2008-2009 TP n 7 - Correction Exceptions et Classes Abstraites Exercice 1 [Utilisation des Exceptions] La méthode parseint est spécifiée ainsi : public static

Plus en détail

NFA032 Programmation objet avec Java

NFA032 Programmation objet avec Java NFA032 Programmation objet avec Java CNAM-Paris-Île-de-France Première session 2013 (sujet bis) Documents et calculatrice interdits. Le barème est donné à titre indicatif. Exercice 1 : programmation objet

Plus en détail

Page 1 sur 5 TP3. Thèmes du TP : l la classe Object. l Vector<T> l tutorial Interfaces. l Stack<T>

Page 1 sur 5 TP3. Thèmes du TP : l la classe Object. l Vector<T> l tutorial Interfaces. l Stack<T> Page 1 sur 5 TP3 Lectures préalables : l Java_II l tutorial Interfaces Thèmes du TP : l la classe Object l Vector l Stack Une pile d'objects Les éléments de la classe Pile sont maintenant des instances

Plus en détail

Erreurs d'exécution (1/3)

Erreurs d'exécution (1/3) Erreurs d'exécution (1/3) Dans tout programme, il peut y avoir des erreurs d'exécution non critiques Exemple : le programme est en train de lire un fichier et il y a un problème d'accès au disque dur.

Plus en détail

1 ère PARTIE : COURS (sans document) Durée: 1h15

1 ère PARTIE : COURS (sans document) Durée: 1h15 Examen 1 ère session 2012-2013 page 1 NFA 032 - Programmation JAVA IPST-CNAM Programmation JAVA NFA 032 Mercredi 25 Juin 2014 Avec document Durée : 2 h30 Enseignant : LAFORGUE Jacques 1 ère Session NFA

Plus en détail

Cours JAVA : La fiabilité en Java

Cours JAVA : La fiabilité en Java Cours JAVA : La fiabilité en Java Version 1.02 Julien Sopena 1 1 julien.sopena@lip6.fr Équipe REGAL - INRIA Rocquencourt LIP6 - Université Pierre et Marie Curie Licence professionnelle DANT - 2015/2016

Plus en détail

Créer une simple application Java avec ECLIPSE. Par Ahcène BOUNCEUR

Créer une simple application Java avec ECLIPSE. Par Ahcène BOUNCEUR Créer une simple application Java avec ECLIPSE Par Ahcène BOUNCEUR Janvier 2005 INTRODUCTION Dans cet exemple nous allons vous montrer comment peut-on créer une simple application Java en utilisant l IDE

Plus en détail

Analyse lexicale 2014-2015

Analyse lexicale 2014-2015 Analyse (lexicale, syntaxique) L3 MIAGE Analyse lexicale Université de Lille, France 2014-2015 1 Rappels Rôle de l analyse lexicale Outils 2 Mise en oeuvre Lexème Vers l analyseur syntaxique Codage d un

Plus en détail

Java. Exception et Entrée/Sortie

Java. Exception et Entrée/Sortie Java Exception et Entrée/Sortie Plan Exception Principe, utilisation, création Paquetage java.io Notion de flots Organisation du paquetage Flots d octets Flots de caractères Exceptions Principe Définition

Plus en détail

ENSTA : cours IN204 Introduction à JAVA et UML

ENSTA : cours IN204 Introduction à JAVA et UML ENSTA : cours IN204 Introduction à JAVA et UML Thierry Bommart DASSAULT AVIATION DGT/DPR/EOS thierry.bommart@dassault-aviation.fr 01.47.11.54.93 Page : 1 Plan Ecole Nationale Supérieure de Techniques Avancées

Plus en détail

Série 3.1- Morane Gruenpeter. Method Summary

Série 3.1- Morane Gruenpeter. Method Summary NFA019 : Série 3.1- Morane Gruenpeter a. La série 3.1 consiste à créer une classe ES qui gère les entrées et les sorties en utilisant les exceptions. La zone de capture qui peut soulever une exception--

Plus en détail

DUT Informatique Module JAVA Apprentis Département Informatique 2008 / 2009. Travaux Pratiques n o 2 : JUnit

DUT Informatique Module JAVA Apprentis Département Informatique 2008 / 2009. Travaux Pratiques n o 2 : JUnit iut ORSAY DUT Informatique Département Informatique 2008 / 2009 Travaux Pratiques n o 2 : JUnit Nom(s) : Groupe : Date : Objectifs : Apprendre à vérifier une implantation à l aide de tests unitaires sous

Plus en détail

RN2-Programmation Orientée Objet - JAVA CH 5 Exception et entrées-sorties

RN2-Programmation Orientée Objet - JAVA CH 5 Exception et entrées-sorties RN2-Programmation Orientée Objet - JAVA CH 5 Exception et entrées-sorties Licence Professionnelle 2006 Agnès Guerraz INRIA Rhône-Alpes agnes.guerraz@inria.fr LP UPMF, Grenoble Septembre 2006 Ce cours reprend

Plus en détail

Pour cet examen, vous disposez de la classe Voiture, incomplète, qui suit :

Pour cet examen, vous disposez de la classe Voiture, incomplète, qui suit : UNIVERSITÉ DE MONTRÉAL FACULTÉ DES ARTS ET DES SCIENCES DIRECTION DE L ENSEIGNEMENT DE SERVICE EN INFORMATIQUE COURS : IFT 1170 EXAMEN INTRA DATE : 4 juin 2009 CHARGÉ DE COURS : Michel Reid DURÉE : 2 heures

Plus en détail

EXAMEN DE JAVA 2010-2011

EXAMEN DE JAVA 2010-2011 NOM : PRÉNOM : TP : G TP EXAMEN DE JAVA 2010-2011 Consignes : avec documents, mais sans téléphone, ordinateur ou autre moyen de communication. Durée : 2h Recommandations : Le code doit être écrit en JAVA

Plus en détail

Outils d expérimentation

Outils d expérimentation Outils d expérimentation (Sécurité : C++ vs Java) Document présenté à : M. Dominique Goutier Dans le cadre du cours : Nouvelles technologies (420-620-SF) Étudiants : David Dastous St-Hilaire Simon Ducas-Desrosiers

Plus en détail

IFT 1020 Programmation II

IFT 1020 Programmation II Département d informatique et de recherche opérationnelle Été 2005 IFT 1020 Programmation II Etienne Bergeron 7 juillet 2005 1 Explications générales Travail pratique #4 Technique de recherche, Entrées/Sorties

Plus en détail

INF 103 Langage JAVA. Contrôle du 7 janvier 2015 Durée : 1h30

INF 103 Langage JAVA. Contrôle du 7 janvier 2015 Durée : 1h30 INF 103 Langage JAVA Contrôle du 7 janvier 2015 Durée : 1h30 Nom : Prénom : Casier : Groupe :........ Écrire les réponses directement sur les feuilles du sujet dans les cases prévues à cet effet. Le barème

Plus en détail

Généralités Composants élémentaires d'un programme Instructions simples. JL Damoiseaux - Dpt R&T

Généralités Composants élémentaires d'un programme Instructions simples. JL Damoiseaux - Dpt R&T JAVA - I Généralités Composants élémentaires d'un programme Instructions simples 2 JAVA? Un langage de programmation (orienté objets) Une architecture basée sur une Machine Virtuelle Un ensemble très important

Plus en détail

Programmer en JAVA. par Tama (tama@via.ecp.fr( tama@via.ecp.fr)

Programmer en JAVA. par Tama (tama@via.ecp.fr( tama@via.ecp.fr) Programmer en JAVA par Tama (tama@via.ecp.fr( tama@via.ecp.fr) Plan 1. Présentation de Java 2. Les bases du langage 3. Concepts avancés 4. Documentation 5. Index des mots-clés 6. Les erreurs fréquentes

Plus en détail

TP Mock. On veut modéliser un jeu de casino : le jeu de la boule.

TP Mock. On veut modéliser un jeu de casino : le jeu de la boule. TP Mock Pour faire ce TP il faut récupérer la "bibliothèque" mockito-all-x.x.x.jar. Vous pouvez la trouver à partir de https://code.google.com/p/mockito/downloads/list (pour mockito- 1.9.5.zip). Anciennement

Plus en détail

Chapitre 11: Récursivité. Qu est-ce que la récursivité? Penser récursivement. Définition récursive d une liste

Chapitre 11: Récursivité. Qu est-ce que la récursivité? Penser récursivement. Définition récursive d une liste Chapitre 11: Récursivité CSI150 Introduction au génie logiciel Chapitre 11: Récursion La récursivité est une technique fondamentale de programmation qui permet de résoudre élégamment certains types de

Plus en détail

La définition de la classe Test est incomplète, pour définir une classe, il faut mettre deux accolades qui contiennent la définition de

La définition de la classe Test est incomplète, pour définir une classe, il faut mettre deux accolades qui contiennent la définition de Ex 1 1- On crée un fichier Test.java qui contient seulement : public class Test Que se passe t'il si on cherche à le compiler? La définition de la classe Test est incomplète, pour définir une classe, il

Plus en détail

Parseur XML (2 séances)

Parseur XML (2 séances) Parseur XML (2 séances) Raksmey PHAN Ce TP vous a pour objectif de vous faire découvrir les fichiers XML. Nous allons créer un programme qui permet de lire et écrire un fichier XML. Puis nous verrons un

Plus en détail

Les Exceptions. Exceptions Exceptions???

Les Exceptions. Exceptions Exceptions??? Les Philippe GENOUD UJF Novembre 2004 1??? mécanisme utilisé très fréquemment dans le langage Java les exceptions sont rencontrées dans de nombreuses situations certaines exécutions peuvent faire apparaître

Plus en détail

Examen 1 ère session 2012-2013 page 1 NFA 031 - Programmation JAVA Formation CNAM

Examen 1 ère session 2012-2013 page 1 NFA 031 - Programmation JAVA Formation CNAM Examen 1 ère session 2012-2013 page 1 NFA 031 - Programmation JAVA IPST-CNAM Programmation JAVA NFA 001 Mercredi 13 Février 2013 Avec document Durée : 2 h30 Enseignant : LAFORGUE Jacques 1 ère Session

Plus en détail

ITI 1521. Introduction à l informatique II

ITI 1521. Introduction à l informatique II ITI 1521. Introduction à l informatique II Marcel Turcotte École d ingénierie et de technologie de l information Version du 14 février 2011 Résumé Traitement d erreurs en Java : Déclaration, gestion, création

Plus en détail

Introduction à la Programmation 1

Introduction à la Programmation 1 Introduction à la Programmation 1 Séance 5 de cours/td Université Paris-Diderot Objectifs: Boucles while. Variables booléennes. 1 La boucle while Boucle non bornée [Cours] La boucle non bornée permet de

Plus en détail

La programmation réseau. Java

La programmation réseau. Java Chapitre 7 : Java et les réseaux La programmation réseau Java Rémy Courdier 1996-2003 - Java Réseau - Version du cours 3.0 1 Sommaire La programmation réseau La classe URL Les Sockets TCP/IP et les principaux

Plus en détail

Cours 14 Les fichiers

Cours 14 Les fichiers Cours 14 Les fichiers F. Gayral 1 Fichier : définition /media/travaux/documents/fgenseignement/java1/courstpsfgfc/14-fichiers/voirtypefichiers Fichier = ensemble d informations codées et stockées sur une

Plus en détail

TP Java ME. Installation du "Wireless Toolkit 2.5.2" de Sun

TP Java ME. Installation du Wireless Toolkit 2.5.2 de Sun TP Java ME Installation du "Wireless Toolkit 2.5.2" de Sun L'environnement de Sun pour commencer à faire du développement pour Java Micro Edition s'appelle le Wireless Toolkit. Nous utilisons dans ce TP

Plus en détail

Tableaux. Tableaux en Java (introduction)

Tableaux. Tableaux en Java (introduction) en Java (introduction) Avertissement : ce cours ne présente qu une version «édulcorée» des tableaux. Ne sont abordés que les tableaux de types primitifs et tous les aspects «objets» sont masqués. Philippe

Plus en détail

Programmation orientée objet en langage JAVA

Programmation orientée objet en langage JAVA Programmation orientée objet en langage JAVA Connexion à une base de données avec JDBC Claude Duvallet Université du Havre UFR Sciences et Techniques 25 rue Philippe Lebon - BP 540 76058 LE HAVRE CEDEX

Plus en détail

Année 2008-2009. Les exceptions Java. Nicolas Baudru mél : nicolas.baudru@esil.univmed.fr page web : nicolas.baudru.perso.esil.univmed.

Année 2008-2009. Les exceptions Java. Nicolas Baudru mél : nicolas.baudru@esil.univmed.fr page web : nicolas.baudru.perso.esil.univmed. Année 2008-2009 Les exceptions Java Nicolas Baudru mél : nicolas.baudru@esil.univmed.fr page web : nicolas.baudru.perso.esil.univmed.fr 1 Introduction Supposez que vous écrivez un programme qui accède

Plus en détail

Exceptions. 1 Entrées/sorties. Objectif. Manipuler les exceptions ;

Exceptions. 1 Entrées/sorties. Objectif. Manipuler les exceptions ; CNAM NFP121 TP 10 19/11/2013 (Séance 5) Objectif Manipuler les exceptions ; 1 Entrées/sorties Exercice 1 : Lire un entier à partir du clavier Ajouter une méthode readint(string message) dans la classe

Plus en détail

Le parallélisme en Java

Le parallélisme en Java Chapitre 7 Le parallélisme en Java L espoir du parallélisme est de pouvoir faire exécuter plusieurs tâches à un ordinateur (avec plusieurs processeurs). Ceci trouve un début d application sur certains

Plus en détail

Procédures et fonctions

Procédures et fonctions Chapitre 5 Procédures et fonctions 5.1 Introduction Considérons le programme suivant, dont le but est d inverser les éléments d un tableau : public class InversionTableau1 { int t[]= {8, 2, 1, 23; Terminal.ecrireStringln("Tableau

Plus en détail

Notes de cours. Introduction

Notes de cours. Introduction Notes de cours GEI 44 : STRUCTURES DE DONNÉES ET ALGORITHMES Chapitre 5 Application des piles Introduction Piles très utilisées dans les compilateurs Voici deux exemples de composants d un compilateur

Plus en détail

Programmation - Java - Fiches du Langage. Marie Beurton-Aimar

Programmation - Java - Fiches du Langage. Marie Beurton-Aimar Programmation - Java - Fiches du Langage Marie Beurton-Aimar Fiche Numéro 1 1.1 Structure d un programme Java Toutes les instructions se terminent par un ; Le nom du fichier qui contient une classe doit

Plus en détail

Cours Bases de données 2ème année IUT

Cours Bases de données 2ème année IUT Cours Bases de données 2ème année IUT Cours 6 : JDBC : ou comment lier ORACLE avec Java 1ère partie Anne Vilnat http://www.limsi.fr/individu/anne/cours Plan 1 Introduction 2 les étapes de la connexion

Plus en détail

Utilisation de Lucene

Utilisation de Lucene Table des matières Utilisation de Lucene... 2 Classes d'indexation... 2 IndexWriter... 2 Directory... 2 Analyzer... 2 Document... 2 Field... 2 Classes de recherche... 3 IndexSearcher... 3 Query... 3 QueryParser...

Plus en détail

Chapitre 1. 1.1 types primitifs. 1.2 Casting

Chapitre 1. 1.1 types primitifs. 1.2 Casting Chapitre 1 Généralités 1.1 types primitifs byte (1 octet) peut contenir les entiers entre -128 et +127. short (2 octets) contient les entiers compris entre -32768 et +32767. int (4 octet) va de -2*10e9

Plus en détail

Corrigé des exercices sur les fonctions (suite)

Corrigé des exercices sur les fonctions (suite) Corrigé des exercices sur les fonctions (suite) Exercice 5.2.1 somme des carrés Ecrire une fonction qui calcule la somme des n premiers carrés 1 2 +2 2 +...+n 2. class Exo9_1{ static int npremierscarres(int

Plus en détail

TP JUnit 4.12. Première partie Le premier test d'une classe

TP JUnit 4.12. Première partie Le premier test d'une classe TP JUnit 4.12 Récupérez les deux fichiers junit.jar et hamcrest-core.jar à partir de l'url https://github.com/junit-team/junit/wiki/download-and-install (plus précisément à partir de l'url http://junit.org).

Plus en détail

E2I- 4 (option HF) CONTRÔLE JAVA 1

E2I- 4 (option HF) CONTRÔLE JAVA 1 E2I- 4 (option HF) CONTRÔLE JAVA 1 Corrigé 1. Les données de type char sont codées en java comme : un octet (code ASCII) deux octets (code ASCII) un octet (code unicode) X deux octets (code unicode) un

Plus en détail

Travaux Pratiques de Réseaux DUT 2 eme année

Travaux Pratiques de Réseaux DUT 2 eme année Travaux Pratiques de Réseaux DUT 2 eme année Copyright c Emmanuel Nataf Chapitre 1 Programmation réseaux 1.1 Communication avec UDP - package java.net Le but de ce TP est de réaliser deux programmes permettant

Plus en détail

Jérôme Bougeault. Tsoft & Groupe Eyrolles, 2003, ISBN 2-212-11352-8

Jérôme Bougeault. Tsoft & Groupe Eyrolles, 2003, ISBN 2-212-11352-8 Jérôme Bougeault Tsoft & Groupe Eyrolles, 2003, ISBN 2-212-11352-8 Principe des exceptions dans Java La hiérarchie des exceptions Propagation des exceptions Les exceptions métier Atelier Objectifs Le mécanisme

Plus en détail

Auto-évaluation Programmation en Java

Auto-évaluation Programmation en Java Auto-évaluation Programmation en Java Document: f0883test.fm 22/01/2013 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INTRODUCTION AUTO-ÉVALUATION PROGRAMMATION EN

Plus en détail

Simulateur Ip. Chapitre 3. 3.2 Construction des topologies

Simulateur Ip. Chapitre 3. 3.2 Construction des topologies Chapitre 3 Simulateur Ip 3.1 Présentation générale Le simulateur IP permet de : construire une topologie de réseau composée de routeurs et de machines reliés deux à deux par des liaisons ; donner des adresses

Plus en détail

Cours Java : deuxième saison

Cours Java : deuxième saison Programmation Objet en Java Cours 5 Exception (C) 2005, Frédéric Peschanski 1 Cours Java : deuxième saison Cours 7 : Exceptions, tests unitaires et assertions Cours 8 : Design Patterns 1 Cours 9 : Design

Plus en détail

Maxima et la programmation en parallèle

Maxima et la programmation en parallèle Maxima et la programmation en parallèle Danielle Léger Département de mathématiques et d informatique Université Laurentienne (Sudbury, Ontario) La présence de l ordinateur constitue une réalité palpable

Plus en détail

Programmation orientée objet en langage JAVA

Programmation orientée objet en langage JAVA Connexion à une base de données avec JDBC Programmation orientée objet en langage JAVA Connexion à une base de données avec JDBC Claude Duvallet Université du Havre UFR Sciences et Techniques 25 rue Philippe

Plus en détail

Le Langage Java et le Monde des Objets

Le Langage Java et le Monde des Objets . p.1 Le Langage Java et le Monde des Objets Les principes de la modélisation Orientée Objet. Qu est-ce qu une classe?. Les types de base. Utiliser les classes. Les tentacules de Java. . p.2 Bibliographie

Plus en détail

LI260: Course de voiture. Vincent Guigue Vincent.guigue@lip6.fr - webia.lip6.fr/~guigue

LI260: Course de voiture. Vincent Guigue Vincent.guigue@lip6.fr - webia.lip6.fr/~guigue LI260: Course de voiture Vincent Guigue Vincent.guigue@lip6.fr - webia.lip6.fr/~guigue Quelques images pour comprendre le contexte Une compétition algorithmique: http://www.dtek.chalmers.se/groups/icfpcontest/

Plus en détail

Epreuve de Programmation Orientée Objet 2ème année de Licence Informatique

Epreuve de Programmation Orientée Objet 2ème année de Licence Informatique Epreuve de Programmation Orientée Objet 2ème année de Licence Informatique 1er juin 2007 Durée : 3 heures. Seule la documentation des classes java.util.list et java.util.arraylist distribuée est autorisée.

Plus en détail

La programmation réseau. Java

La programmation réseau. Java Chapitre 7 : Java et les réseaux La programmation réseau Java Rémy Courdier 1996-2009 - Java Réseau - Version du cours 3.0 1 Sommaire La programmation réseau Rappel Réseau Couches réseau et TCP-IP Notion

Plus en détail

Projet. Coloration lexicale et indentation de code Java

Projet. Coloration lexicale et indentation de code Java Université Paris Diderot Programmation Orientée Objet L3 Année 2011-2012 Projet Coloration lexicale et indentation de code Java Le but de ce projet est de développer un programme qui prend en entrée un

Plus en détail

Programmation en Java Java et XML. NGUYEN Thi Minh Tuyen

Programmation en Java Java et XML. NGUYEN Thi Minh Tuyen Programmation en Java Java et XML XML l'acronyme de «extensible Markup Language». permet d'échanger des données entres applica=ons hétérogènes car il peut modéliser et stocker des données de façon portable.

Plus en détail