OBJECTIFS DU COURS Décrire les éléments-clé de la plate-forme Java Compiler e

OBJECTIFS DU COURS Décrire les éléments-clé de la plate-forme Java Compiler et exécuter une application Java Comprendre et utiliser la documentation en ligne de Java Décrire la syntaxe du langage Comprendre le paradigme OO et utiliser Java pour le mettre en œuvre Comprendre et utiliser les exceptions Développer un programme qui utilise une interface graphique pour introduire les données à traiter Comprendre la gestion des événements Développement des applets JAVA COMME PLATEFORME Plateforme = environnement hardware ou software sur lequel le programme est exécuté. La « Java Platform » est constituée de : •La « Java Virtual Machine » (JVM) •Des interfaces de programmation d’application (Java API) 2 JAVA COMME LANGAGE DE PROGRAMMATION Le compilateur Java génère un bytecode, c’est à dire un format intermédiaire, neutre architecturalement, conçu pour faire transiter efficacement le code vers des hardware différents et/ou plateformes différentes Le bytecode ne peut-être interprété que par le processeur de la JVM 3 DÉPLOIEMENT D’UN PROGRAMME CLASSIQUE DE LA COMPILATION 4 DÉPLOIEMENT D’UN PROGRAMME CHANGEMENT DE LA VISION TRADITIONNELLE DE LA COMPILATION 5 Chaque programme est compilé et interprété « Write once run everywhere » JAVA ET SES VERSIONS 6 Quelques versions de la Machine Virtuelle • Java 2 Micro Edition (Java ME): cible les terminaux portables. • Java 2 Standard Edition (Java SE) : cible les postes clients. • Java 2 Entreprise Edition (Java EE) : définit le cadre d’un serveur d’application. Différentes finalités • SDK (Software Development Kit) : fournit un compilateur et une machine virtuelle. • JRE (Java Runtime Environment) : fournit uniquement une machine virtuelle. Idéal pour le déploiement de vos applications. II. PREMIÈRE APPLICATION EN JAVA Deux façons d’écrire des programmes Java: En écrivant le code dans un simple éditeur de texte Compilation et exécution du code en ligne de commande DOS En utilisant un environnement de développement (IDE) Netbeans (http://www.netbeans.com) Eclipse (https://www.eclipse.org/downloads/) Borland JBuilder (http://www.borland.com/jbuilder) … COMMENT DÉVELOPPER UNE APPLICATION? APPLICATION VERSUS APPLET Une application Java est composée d’une classe possédant une méthode main() : public static void main (String[] args){ //code à exécuter pour initialiser l’application } L’environnement d’exécution dépend de l’OS de la machine Pas de restriction au niveau des API Une applet Java Comprend une classe publique dérivant de java.applet.Applet L’environnement d’exécution dépend du browser Web Restrictions au niveau des API Généralement pas autorisée à lire ou écrire sur des fichiers locaux. Interdiction d’ouvrir des connections réseaux vers d’autres systèmes que la machine hôte qui a chargé l’applet … UNE PREMIÈRE APPLICATION • Les instructions Java se terminent par un ; • Les blocs sont délimités par { pour le début de bloc } pour la fin du bloc Un bloc permet de définir un regroupement d’instructions. La définition d’une classe ou d’une méthode se fait dans un bloc. • Sauts de ligne, les espaces et les tabulations sont autorisés. Cela permet de présenter un code plus lisible. INSTRUCTIONS POINT D’ENTRÉE D’UN PROGRAMME JAVA Pour pouvoir faire un programme exécutable, il faut toujours une classe contenant une méthode particulière, la méthode « main ». – C’est le point d’entrée dans le programme : le microprocesseur sait qu’il va commencer à exécuter les instructions à partir de cet endroit. public static void main(String args[ ]) { …/… } Créer un fichier texte : Bonjour.java Règle de bonne pratique : 1 classe par fichier et 1 fichier par classe La première ligne du programme doit être la déclaration de la classe Tout programme doit contenir une méthode main qui porte la signature ci-contre Écrire à l’écran “Bonjour le monde” Fermer les accolades public class Bonjour { public static void main (String[]args) { System.out.println(« Bonjour le monde"); } } · Compiler le programme : javac Bonjour.java · Le compilateur génère le bytecode dans le fichier : Bonjour.class · Exécuter l’application : java Bonjour · « Bonjour le monde » s’affiche à l’écran APPLICATION BONJOUR LE MONDE IDENTIFICATEURS • On a besoin de nommer les classes, les variables, les constantes, etc. ; on parle d’identificateur. • Les identificateurs commencent par une lettre, _ ou $ Attention : Java distingue les majuscules des minuscules . • Conventions sur les identificateurs : La première lettre est majuscule pour les classes et les interfaces. exemples : MaClasse La première lettre est minuscule pour les méthodes, les attributs et les variables. • exemples : getLongueur(), i Les constantes sont entièrement en majuscules. • exemple : HAUTEUR_MAX COMMENTAIRES DANS LE CODE SOURCE Java dispose de trois formes de commentaires : Tout texte entre « // » et la fin de la ligne // Commentaires sur une seule ligne Tout texte entre « /* » et « */ » /* Commentaires sur un nombre très important de lignes */ Les textes entre « /** » et « */ » sont utilisés pour créer des commentaires que l’exécutable JAVADOC pourra traiter afin de produire une documentation /** Commentaires afin de produire la documentation */ LES MOTS RÉSERVÉS DE JAVA abstract default goto null synchronized boolean do if package this break double implements private throw byte else import protected throws case extends instanceof public transient catch false int return true char final interface short try class finally long static void continue float native super volatile const for new switch while TYPES PRIMITIFS ET TYPES DE RÉFÉRENCE Java est un langage fortement typé Le type de données précise les valeurs que la variable peut contenir les opérations que l’on peut réaliser dessus Deux types de données: Donnée primitive: contient physiquement la valeur (caractère, nombre, booléen) Référence: contient l’adresse mémoire où l’information relative à l’objet, l’interface, etc. est réellement stockée Adresse Référence: TYPES PRIMITIFS ET TYPES DE RÉFÉRENCE TYPES DE DONNÉES PRIMITIFS (1/4) byte 8bits -128 to 127 short 16bits -32768 to 32767 int 32bits -2^31 to 2^31-1 long 64 bits -2^63 to 2^63-1 Integral float 32bits 1.4E-45 3.4E 38 double 64bits 4.9E -324 1.8E308 Floating char 16bits 0 to 65535 Textual one bit : true or false Logical P rim itive Data Types TYPES PRIMITIFS ET TYPES DE RÉFÉRENCE TYPES DE DONNÉES PRIMITIFS (2/4) Explication: byte : codé sur 8 bits  28 valeurs  (–27) to (27–1) = -128 à 127 int : codé sur 32 bits  232 valeurs  (–231) to (231–1) Déclaration et initialisation : int int x=12; short short x= 32; long long x= 200L; // Nombre accolé à un L byte byte x=12; double double x=23.2323; float float x= 23.233F; // Nombre accolé à un F char char c=‘a’; boolean boolean b=true; TYPES PRIMITIFS ET TYPES DE RÉFÉRENCE TYPES DE DONNÉES PRIMITIFS (3/4) Déclaration, Initialisation et Assignation des types primitifs int t; Déclaration d’un entier t (t est l’identificateur) int u = 3; Déclaration et initialisation d’un entier t=7; Initialisation de t à la valeur 7 u=t; Assignation (affectation) de la valeur de t à u m=9; Erreur déclaration préalable nécessaire char c; Déclaration c=‘a’; Initialisation TYPES PRIMITIFS ET TYPES DE RÉFÉRENCE TYPES DE DONNÉES PRIMITIFS (4/4) Exemple: int a = 5; int b = 8; a=b; Déclaration et initialisation de 2 entiers: a et b Affectation de la valeur de b à a Désormais, il existe deux variables en mémoire qui ont la même valeur a=8 b=8 TYPES PRIMITIFS ET TYPES DE RÉFÉRENCE TYPES DE RÉFÉRENCE Tous les types hormis les types primitifs « Pointeur implicite » sur un objet Adresse Référence: PORTÉE D'UNE VARIABLE La portée d'une variable va de la ligne de sa définition jusqu'à la fin du bloc dans lequel elle est définie. Exemple { int n=10; … { int p=20; float n=3.5; //erreur de compilation : définition de n invalide. … } System.out.println("p = " + p); //erreur de compilation : p inconnu } ARITHMÉTIQUE ET OPÉRATEURS ARITHMÉTIQUE ÉLÉMENTAIRE Quelle est la valeur de : 5+3*4+(12/4+1) Règles de précédences sur les opérateurs: Niveau Symbole Signification 1 () Parenthèse 2 * / % Produit Division Modulo 3 + - Addition ou concaténation Soustraction OPÉRATEURS DE COMPARAISON Pour comparer deux valeurs: Opérateurs logiques: Opérateur Exemple Renvoie TRUE si > >= v1 > v2 v1 >= v2 v1 plus grand que v2 Plus grand ou égal < <= v1 < v2 v1 <= v2 Plus petit que Plus petit ou égal à == != v1 == v2 v1 != v2 égal différent Opérateur Usage Renvoie TRUE si && & expr1 && expr2 expr1 & expr2 expr1 et expr2 sont vraies Idem mais évalue toujours les 2 expressions || | expr1 || expr2 expr1 | expr2 Expr1 ou expr2, ou les deux sont vraies idem mais évalue toujours les 2 expressions ! ! expr1 expr1 est fausse != expr1 != expr2 si expr1 est différent de expr2 ARITHMÉTIQUE ET OPÉRATEURS OPÉRATEURS D’ASSIGNATION (D’AFFECTATION) L’opérateur de base est ‘=‘ Il existe des opérateurs d’assignation qui réalisent à la fois une opération arithmétique, logique, ou bit à bit et l’assignation proprement dite Opérateur Exemple Équivalent à += expr1 += expr2 expr1 = expr1 + expr2 -= expr1 -= expr2 expr1 = expr1 – expr2 *= expr1 *= expr2 expr1 = expr1 * expr2 /= expr1 /= expr2 expr1 uploads/s3/ partie-1-java.pdf

  • 173
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager