La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 1 ~ A. P. ~ Chapitre I Présentation du langage Java.

Présentations similaires


Présentation au sujet: "Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 1 ~ A. P. ~ Chapitre I Présentation du langage Java."— Transcription de la présentation:

1 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 1 ~ A. P. ~ Chapitre I Présentation du langage Java

2 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 2 ~ A. P. ~ 1 - Généralités

3 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 3 ~ A. P. ~ Caractéristiques générales Java est un langage de programmation développé par Sun Microsystems à partir des années 95 Cest un langage " à objets " classes objets messages héritage programmation objet uniquement

4 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 4 ~ A. P. ~ Caractéristiques générales Java est un langage sécurisé pas de pointeurs mais des références pas de dépassement d'indice de tableau pas de conversion implicite de types tous les objets sont créés dynamiquement nettoyage automatique de la mémoire complexité de l'héritage multiple contournée par la notion d'interface

5 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 5 ~ A. P. ~ Caractéristiques générales Java implémente des mécanismes avancés programmation parallèle multithread synchronisation, exclusion mutuelle, communication portabilité le compilateur génère un pseudo code (le byte-code) exécuté par la machine virtuelle propre à chaque environnement distribution du code chargement dynamique code mobile

6 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 6 ~ A. P. ~ Caractéristiques générales Java est un langage simple syntaxe familière similaire à celle du C++ le corpus des règles est limité les constructions sont simples les données sont typées suivant des standards (C2, IEEE 754, Unicode) La difficulté de programmation réside essentiellement dans la maîtrise des concepts objets (cf. cours C++)

7 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 7 ~ A. P. ~ 2 – Développer avec Java

8 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 8 ~ A. P. ~ Les types d'application Programme Java p-code obtenu par la compilation d'un source écrit en langage Java exécuté de manière autonome à l'aide de l'interpréteur Java Virtual Machine (JVM). correspond à une application au sens classique Applet p-code invoqué depuis des documents HTML exécuté à l'intérieur du navigateur ou encore grâce à un programme dédié l'appletviewer résidant sur le serveur et téléchargé via le réseau

9 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 9 ~ A. P. ~ Les types d'application Mais aussi… Servlet Java = applet côté serveur et sans interface utilisateur Java Beans = composants logiciels écrits en Java et réutilisables JavaScript = langage frère de Java simplifié pour être directement intégré dans une page HTML afin d'effectuer des traitements sur le poste client

10 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 10 ~ A. P. ~ Chaîne de développement 1)Écriture à l'aide d'un éditeur du fichier source d'extension.java (exemple NomFic.java ) 2)Compilation du source pour compiler javac NomFic.java on obtient le fichier de byte-code NomFic.class 3)Exécution du byte-code pour une application java NomFic.class pour une applet on invoque le code à l'intérieur d'une page HTML grâce aux balises

11 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 11 ~ A. P. ~ Chaîne de développement Exemple de fichier source // HelloWorld.java public class HelloWorld { public static void main(String[] args) { System.out.println("Hello World!"); } }

12 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 12 ~ A. P. ~ Chaîne de développement Remarques : tout fichier source.java doit avoir une classe déclarée public portant le même nom que le fichier sans l'extension (ici class HelloWorld ) pas de fonctions ou de variables globales : même le point d'entrée du programme main appartient à une classe l'usage veut qu'un fichier source ne contienne qu'une seule classe

13 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 13 ~ A. P. ~ Chaîne de développement Compilation et exécution avec le JDK $javac HelloWorld.java $java HelloWorld Hello World! $

14 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 14 ~ A. P. ~ Chaîne de développement Exemple : HelloWorld.java javac HelloWorld.java HelloWorld.class Fichier source Programme compilé (p-code) Programme compilé (p-code) Compilation Moteur dinterprétation p-code Registres / piles virtuels Machine virtuelle Java Système d'Exploitation Unix, Windows, Mac, etc. java HelloWorld Source P.Emy CERTA

15 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 15 ~ A. P. ~ Les outils Le minimum requis un éditeur de texte (exemple TextPad) javac le compilateur java l'interpréteur de byte-code Pour les applets il faut en plus soit le visualiseur appletviewer soit une connexion réseau la pile protocolaire TCP/IP un navigateur avec un interpréteur Java

16 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 16 ~ A. P. ~ Les outils le JRE (Java Runtime Environment) représente la machine virtuelle Java nécessaire pour exécuter une application Java (dépend de la machine et du système d'exploitation) le SDK (Standard Development Kit) anciennement appelé JDK, comprend l'ensemble des outils pour développemer une application Java une JRE, le compilateur et les bibliothèques divers outils comme javadoc ou jar

17 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 17 ~ A. P. ~ Les outils L'utilitaire jar (Java Archive) permet d'archiver des classes Java mais aussi des fichiers image ou audio de distribuer ou d'installer une application Pour créer un fichier jar jar –options [path][…] options identiques à celles de l'utilitaire tar d'Unix Pour récupérer le contenu d'un fichier jar par la ligne de commande jar –t [path][…] dans une applet par

18 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 18 ~ A. P. ~ Les outils Ces outils de base sont téléchargeables à partir du site de Sun microsystems Il existe aussi de nombreux IDE Jbuilder de Borland Jdeveloper d'Oracle Visual Café de Symantec Websphere d'IBM les "open source" NetBeans et Eclipse

19 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 19 ~ A. P. ~ Quelques références Bibliographie HORSTMANN CORNELL, Au cœur de JAVA, Volume 1 et volume 2, CAMPUSPRESS [1999] DELANNOY, Programmer en JAVA, EYROLLES [2000] LEMAY CADENHEAD, JAVA 2, CAMPUSPRESS [2002] HORTON, Maîtrisez Java 2, CAMPUSPRESS [2001] Quelques liens

20 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 20 ~ A. P. ~ 3 - Éléments du langage

21 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 21 ~ A. P. ~ Mots réservés en Java

22 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 22 ~ A. P. ~ Les identificateurs Identificateur = nom des différents éléments du programme variableex: totalGeneral constanteex: TAILLE méthodeex: int getX() classeex: class MaClasse package ex: java.util.Vector Formé à partir de lettres, de chiffres et des caractères _ et $ (à éviter comme premier caractère)

23 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 23 ~ A. P. ~ Les symboles Caractères ou groupe de caractères pour représenter des opérateurs pour représenter des caractères spéciaux & ~ { } ( ) [ ] | \ / * - + %, ;. = ! ^ ? : Exemples: == opérateur d'égalité >>> opérateur de décalage binaire à droite non signé

24 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 24 ~ A. P. ~ Les commentaires 3 styles de commentaires plusieurs lignes /* ceci est un commentaire qui se termine ici*/ sur une ligne // commentaire sur une ligne destiné au générateur automatique de documentation JavaDoc /** commentaire destiné à l'outil de documentation automatique */

25 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 25 ~ A. P. ~ Les commentaires JavaDoc Ils permettent de documenter la classe en même temps que le codage Le programme javadoc génère des fichiers HTML de documentation à partir des fichiers Java On peut inclure du code HTML dans les commentaires Javadoc

26 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 26 ~ A. P. ~ Les commentaires JavaDoc Permet de décrire si nécessaire pour une classe ses spécifications sa version son auteur Dans la classe on peut également préciser le rôle de chaque attribut décrire les méthodes (paramètres, valeur retournée, exceptions pouvant être éventuellement générer) meilleure lisibilité du programme

27 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 27 ~ A. P. ~ Les types en Java Les types en Java se classent en 2 catégories les types primitifs ou types de base les caractères les entiers les réels les booléens les types références les tableaux tous les objets manipulés Important pour le passage de paramètres aux méthodes qui se fait par valeur

28 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 28 ~ A. P. ~ Les types primitifs Entier: type codé en C2 byte 1 Ø, short 2 Ø, int 4 Ø, long 8 Ø Réel: type codé en IEEE 754 float 4 Ø, double 8 Ø Caractère : type char codé en Unicode sur 2 Ø Booléens: type boolean codé sur 1 bit

29 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 29 ~ A. P. ~ Les types primitifs

30 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 30 ~ A. P. ~ Les types primitifs Codage des caractères ASCII sur 128 premiers caractères les 128 autres = caractères des divers langages les suivants = divers symboles Les caractères sont écrits entre ainsi la séquence \uNNNN désigne le caractère dont la valeur Unicode est NNNN \u0020 signifieblanc ( identique à ' ' ) \u0041 signifie A ( identique à 'A' ) \ signifie \\ signifie \

31 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 31 ~ A. P. ~ Les variables Déclaration identique au C++ Type variable; Type variable = valeur; Une variable représente soit l'attribut d'une classe soit une variable de classe soit une variable locale à une méthode de classe Caractéristiques conversion toujours explicite et identique au C var1 = (type_force) var2; portée limitée au bloc { } de déclaration

32 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 32 ~ A. P. ~ Les variables Exemples : boolean encore = true; // initialisation à vrai int x = 10; // decimal int x = 0x0A; // hexadécimal int x = 10L; // entier long float y = F; // réel simple précision x = (int) y; // transtypage d'un réel vers un int float z = -2.45E-3F; // réel avec exposant double pi = D; // réel double précision char rep = 'n'; char rep = '\u006e'; // code ASCII de 'n'

33 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 33 ~ A. P. ~ Les constantes Une constante est définie à l'aide de final et est toujours initialisée final type MACONSTANTE = valeur; Exemples: final float CM_PAR_POUCE = 2.54F; final double E = D; Une constante de classe est définie à l'aide de static final Exemple: static final float PI = F;

34 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 34 ~ A. P. ~ Les constantes Caractères spéciaux: '\b' caractère backspace (retour arrière) '\f' caractère saut de page (formfeed) '\n' caractère saut de ligne (new line) '\r' caractère retour chariot '\t' caractère de tabulation '\\' caractère \ '\'' caractère '

35 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 35 ~ A. P. ~ Les opérateurs Opérateur d'affectation = Opérateurs arithmétiques + - * / % = -= *= /= %= Opérateurs relationnels > >= == != < <= Opérateurs logiques && || ! Opérateurs binaires & | ^ ~ >> >>

36 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 36 ~ A. P. ~ Les opérateurs L'opérateur logique ? composé de trois expressions expression1 ? expression2 : expression3 si expression1 vraie alors expression2 sinon expression3 valabs = (x >= 0) ? x : -x; Opérateur d'allocation mémoire new

37 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 37 ~ A. P. ~ Priorité des opérateurs

38 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 38 ~ A. P. ~ 4 – Les structures de contrôle

39 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 39 ~ A. P. ~ Les structures de contrôle L'alternative if ( ) else un bloc commence par { et finit par } Alternatives imbriquées if ( ) else if ( ) else if (expr3>) else

40 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 40 ~ A. P. ~ Les structures de contrôle Le choix multiple switch ( ) { case valeur_1:......; break; case valeur_2:......;......; case valeur-n:......;......; break; default:......;......; }

41 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 41 ~ A. P. ~ Les structures de contrôle Le choix multiple (suite) branchement lorsque l'expression entière est égale à une des valeurs des case branchement à default si aucune valeur trouvée passe en séquence jusqu'au premier break ou fin du switch

42 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 42 ~ A. P. ~ Les structures de contrôle L'itération bornée traduction du pour for( ; ; ) expr1 effectuée 1 fois pour toutes expr2 condition de maintien expr3 effectuée à la fin de chaque boucle nombre de passages 0 à n

43 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 43 ~ A. P. ~ Les structures de contrôle La répétitive tant que while( ) expression condition de maintien nombre de passages 0 à n La répétitive répéter tant que do while ( ) ; nombre de passages 1 à n

44 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 44 ~ A. P. ~ Les structures de contrôle L'instruction break permet de sortir d'un switch d'un for d'un while d'un do for(;;) { if (EVENEMENT) break; /* si EVENEMENT devient VRAI on sort */ }

45 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 45 ~ A. P. ~ Les structures de contrôle L'instruction continue force le branchement en fin de boucle d'une répétitive la condition de passage est retestée évite l'écriture d'un sinon while (i = 0 */ }

46 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 46 ~ A. P. ~ 5 – Compléments

47 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 47 ~ A. P. ~ Les packages Un package regroupe des classes et des interfaces qui portent sur un même domaine Pour utiliser une classe d'un package soit il faut la préfixer avec le nom du package soit on utilise la directive import import java.util.* importe toutes les classes du package import java.util.vector importe la classe vector du package java.util Exemple de packages inclus dans le SDK java.lang java.io java.util java.net

48 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 48 ~ A. P. ~ Les packages Pour créer son propre package il faut ajouter package dans chaque fichier source.java devant composer le package il faut s'assurer qu'il n'existe pas de classes homonymes Lorsqu'on ne spécifie pas de package dans un fichier source, les classes créées appartiennent au package par défaut

49 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 49 ~ A. P. ~ Les exceptions Permet le traitement uniforme et structuré des anomalies survenant lors de l'exécution d'un programme Mécanisme identique à celui du C++ Mais en Java, toutes les exceptions sont des objets de la classe Exception

50 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 50 ~ A. P. ~ Les exceptions Principe si on appelle une méthode susceptible de lancer une exception, on se porte candidat par le bloc try si une erreur survient dans la méthode appelée, cette dernière lance une exception par throw l'appelant intercepte l'exception grâce au bloc gestionnaire d'exception catch il y a un gestionnaire par type d'exception le bloc finally est exécuté dans tout les cas et en dernier s'il existe

51 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 51 ~ A. P. ~ Les exceptions Schéma général de traitement des exceptions try { // bloc de code pouvant générer l'exception } catch(TypeException1 e) { // traitement approprié pour ce type d'exception } catch(TypeException2 e) { // traitement approprié pour ce type d'exception } finally { // bloc facultatif mais toujours exécuté si présent }

52 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 52 ~ A. P. ~ Interception d'une exception Void Methode() throws T {... if (probleme) throw new T();... } type T de l'exception try { Methode(); } catch (T param) {... }...

53 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 53 ~ A. P. ~ Les exceptions Méthode susceptible de générer des exceptions propagées vers l'appelant on déclare dans son en-tête les exceptions qu'elle peut lancer par throws TypeExc1, TypeExc2,.. mais les exceptions héritant de Error ou de RuntimeException ne se déclarent pas l'exception est lancée par throw soit il s'agit d'une instance de la hiérarchie Exception soit il s'agit d'une instance d'une classe personnelle d'exception qui doit héritée de Exception

54 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 54 ~ A. P. ~ Les exceptions Capture des exceptions par l'appelant se fait par le gestionnaire catch pour le type voulu si on souhaite que le gestionnaire traite tout type d'exception, on indique Exception comme type catch (Exception e) si une exception n'est pas traitée à un niveau (gestionnaire absent ou de type inadapté), sa gestion est déléguée au niveau supérieur si l'exception sort de la méthode main sans être gérée, elle est alors traitée par la machine Java

55 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 55 ~ A. P. ~ Les chaînes de caractères En Java il n'y a pas de type chaîne prédéfini On utilise pour cela la classe String fournie d'origine avec le langage Il existe aussi une classe StringBuffer de chaînes modifiables Ces classes font partie du package java.lang reconnu de façon implicite

56 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 56 ~ A. P. ~ Les chaînes de caractères Les opérations courantes de la classe String : concaténation + et += longueur length égalité equals et equalsIgnoreCase et non == qui porte sur références, de même pour la comparaison qui se fait par compareTo extraction substring transformation en un tableau de char toCharArray changer la casse toUpperCase et toLowerCase suppression des espaces de début et fin trim etc., etc. voir l'aide pour les autres méthodes

57 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 57 ~ A. P. ~ Les chaînes de caractères Exemples String ch1 = "essai d'une chaine"; String ch2 = new String ("Bonjour"); // on récupère les 3 premiers car de ch2 String ch3 = ch2.substring(0,3); int n = ch3.length(); // longueur de ch1 ch2 = ch2 + " tout le monde"; if (ch3.equals("Bon") == true) … … … if (ch3.compareTo(ch1) >= 0) … … …

58 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 58 ~ A. P. ~ Les tableaux Sont des objets créés dynamiquement Déclaration type nomTableau[]; ou type[] nomTableau; Puis allocation mémoire nomTableau = new type[tailleTableau]; Déclaration et allocation mémoire type nomTableau[] = new type[tailleTableau]; Déclaration et initialisation type nomTableau[] = {val1, val2, val3,...valn};

59 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 59 ~ A. P. ~ Les tableaux Comme en C l'indice du premier élément est 0 Le champ length d'un tableau donne la dimension du tableau Par sécurité, Java déclenche les exceptions ArrayIndexOutOfBoundsException si le rang d'un élément est invalide NegativeArraySizeException si la taille est négative à la création du tableau ArrayStoreException si on tente de stocker un élément de type incompatible

60 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 60 ~ A. P. ~ Les tableaux Exemples // déclaration String tabJour[] = {"Lundi","Mardi","Mercredi"}; short [ ][ ]mat = {{5, 2, 33,-8}, {1, 2, 3, -7}}; int [ ] tabVide = {}; int tabEntiers[] = new int[5]; // parcours for(i=0;i

61 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 61 ~ A. P. ~ Les tableaux Un tableau est en fait une référence, donc: il faut penser à l'allocation mémoire sauf s'il est initialisé à la déclaration il peut être modifié s'il est passé en argument à une méthode une méthode de classe peut retourner un tableau l'affectation entre tableaux de même type porte sur les références (la copie physique se fait par la méthode arraycopy de la classe System ) Ne pas oublier: en Java il y a une gestion automatique de la mémoire

62 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 62 ~ A. P. ~ Sortie écran en mode texte La classe System comprend 3 canaux d'E/S écran out clavier in erreurs err Pour l'affichage à l'écran on utilise 2 méthodes System.out.print et System.out.println qui fait un saut de ligne après l'affichage qui prennent en argument une chaîne de caractères toute variable son type peut être concaténée avec l'opérateur + pour former la chaîne d'affichage

63 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 63 ~ A. P. ~ Sortie écran en mode texte Exemple: public class TestAffichage { public static void main(String[] argv) { // variables locales int x = 3; char c='o'; float z = -2.45E-3F; String ch = "essai"; // affichage System.out.println(" x = : " +x +" et z = : " +z); System.out.println("\n c = : " +c +" et ch = : " + ch ); } }

64 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 64 ~ A. P. ~ Entrée clavier en mode texte La saisie en mode texte est compliquée inclusion du package java.io.* utilisation de la classe BufferedReader pour la lecture du flux d'entrée déclaration dun buffer dentrée saisie dune chaîne par la méthode readLine() conversion de la chaîne saisie en entier, en byte, en entier ou en réel mise en oeuvre d'une gestion des exceptions

65 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 65 ~ A. P. ~ Entrée clavier en mode texte Exemples de saisie import java.io.*; class TestSaisie { public static void main(String args[]) throws IOException, NumberFormatException { InputStreamReader isr = new InputStreamReader(System.in); BufferedReader rep = new BufferedReader(isr); System.out.print("Entrez une chaine : "); String saisie = rep.readLine(); System.out.println("Voici la chaine saisie : "+ saisie); System.out.print("Entrez un entier : "); int i = Integer.parseInt(rep.readLine()); System.out.println("l'entier i = "+ i);

66 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 66 ~ A. P. ~ Entrée clavier en mode texte Exemples de saisie (suite) System.out.print("Entrez un reel : "); float f = Float.parseFloat(rep.readLine()); System.out.println("le reel f = "+ f); // cas d'un caractère System.out.print("Entrez un caractere : "); String valeur = rep.readLine() ; char c = valeur.charAt(0); System.out.println("le caractere vaut = "+ c); } // public static void main } // class TestSaisie

67 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 67 ~ A. P. ~ Entrée clavier en mode texte Exemple avec gestion des exceptions import java.io.*; public class TestSaisieExcep { public static void main(String args[]) { // saisie d'un réel avec gestion des exceptions int x = 0; // entier à saisir System.out.print("Entrez un entier : "); try { InputStreamReader isr = new InputStreamReader(System.in); BufferedReader rep = new BufferedReader(isr); x = Integer.parseInt(rep.readLine()); }

68 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 68 ~ A. P. ~ Entrée clavier en mode texte Exemple avec gestion des exceptions (suite) // exception éventuellement générée par readLine catch (IOException e) { System.out.println("ERREUR DE SAISIE \n\n"); } // exception éventuellement générée par parseInt catch (NumberFormatException e) { System.out.println("ERREUR DE TYPE \n\n"); } System.out.println("l'entier vaut : "+ x); } // public static void main } // class TestSaisie

69 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 69 ~ A. P. ~ ApplicationApplication Définition d'un tableau de taille dynamique avec remplissage aléatoire import java.io.*; import java.util.*; public class TestTableau { public static void main(String[] argv)throws IOException { // saisie de la dimension du tableau InputStreamReader isr = new InputStreamReader(System.in); BufferedReader rep = new BufferedReader(isr); System.out.print("Entrez un entier : "); int taille = Integer.parseInt(rep.readLine());

70 Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 70 ~ A. P. ~ ApplicationApplication Définition d'un tableau de taille dynamique avec remplissage aléatoire // dimensionnement dynamique du tableau d'entiers int tabEntiers [] = new int[taille]; // remplissage aléatoire d'entiers compris entre 0 et 50 Random r = new Random(); for(int i=0;i


Télécharger ppt "Chapitre 1 ~ Cours Java ~ Informatique IUT A Informatique UCL B 1 ~ A. P. ~ Chapitre I Présentation du langage Java."

Présentations similaires


Annonces Google