INITIATION AJAVA Patrice E. BROU 2012 Unité Thème . java 2 les concepts de base Historique Apparu fin 1995 début 1996 et développé par Sun Microsystems Java s’est très rapide taillé une place impo n ors’ l’internet. Destiné au départ ? sous la désignation d Sni* to View s le domaine de traux téléphoniques langage « oak », la soci te Sun a eu l’idee de le recentrer sur les applications de l’Internet et des réseaux. C’est un langage en évolution permanente Java 2 est la version stabilisée de java fondée sur la version initiale 1. 2. 2 du JDK (Java Development Kit) dont la dernière version est Java SE 1. pdate 9. NB : Les éditeurs de logiciels dont Oracle recommandent la version 1. 6 qui est plus stable. Les objectifs de java sont d’être multi plateformes et d’assurer la sécurité aussi bien pendant le développement que pendant l’utilisation d’un programme java. ). C’est un langage algorithmique et orientée objet comme C#et C++. Son utilité n’est plus ? integrées pour uin accès aux bases de données. 11 – Les éléments du langage 1 1. 2 – Les types de base en Java java est un langage fortement typé : Comme les langages C, C++, Pascal etc.
Java dispose de type prédéfinis ou type élémentaires. En Java, Il faut déclarer un objet ou une variable avec son type avant de l’utiliser. 2. 1 Tous les type élémentaires de Java et le transtypage type élémentaire intervalle de variation nombre de bits boolean false , true 1 bit byte -128 8 bits char +127 caractères unicode (valeurs de O à 65536) PAGF 7 1 l’opérateur de transtypage noté: O int x ; x = (int)y; signifie que l’on demande de transtyper la valeur contenue dans la variable y en un entier signé 32 bits avant de la mettre dans la variable y.
Tous les types élémentaires peuvent être transtypés à l’exception du type ui ne peut pas être converti en un autre type (différence avec le C). Les conversions peuvent être restrictives quant au résultat; par exemple le transtypage du réel 5. 27e-2 en entier (x — ( 5. 27e-2) mettra l’entier zéro dans x. 2. 2 Variables, valeurs, constantes en Java Une variable Java peut contenr soit une valeur d’un type élémentaire, soit une référence à un objet. Les variables jouent le même rôle que dans les langages de programmation classiques impératifs.
La règle d’écriture d’un identificateur est donnée par le schéma ci-d PAGF 3 1 Valeur ; car ‘8’ , Valeur car ( Lorsque la variable car est l’un des caractères ‘1 la variable Valeur est égale à la valeur numérique associée (il s’agit d’une conversion car – ‘O’ Valeur = O, car – ‘1’ Valeur = 1, . , car = ‘9’ —> Valeur = 9). Les constantes en Java ressemblent à celles du pascal Ce sont des variables dont le contenu ne peut pas être modifié, elles sont précédées du mot clef f inal Exemple final x=10 ; x est déclarée comme constante entière initialisée à 10. =32; provoquera une erreur de compilation interdisant la modification de la valeur de x. 2. 3 Priorité d’opérateurs en Java Les 39 opérateurs de Java sont détaillés par famille, plus loin . sont utilisés comme dans tous les langa es im ératifs pour manipuler, Ils séparer, comparer ou PAGF OF SI priorité opérateurs PAGF s 1 float b et int 2 résultat : float a—x/2; = 2. 0 // type float conversion automatique 2. / type float x et float 2 6 1 premier opérande de la soustraction, le second opérande de la soustraction est k++ c’est la valeur actuelle de k qui est utilisée (k=5) avant incrémentation de k, ce qui revient à calculer n = 5-5 et donne n = oetk=6. Exemple 3 Utilisation de l’opérateur de post-incrémentation en combinaison vec un autre opérateur unaire. ( ; — ) : cas de l’affectation nbrl,z,t,u,v; nbrl – 10 v=10 nbrl — 11 v = nbrl++ pré-incrémentation : ++k la valeur de k est d’abord augmentée de un ensuite utilisée dans l’instruction.
Exemplel Exemple 2 int k = 5, k-6 Dans l’instruction ++k – k nous avons le calcul suivant : le premier opérande de la soustraction étant ++k c’est donc la valeur incrémentée de k (k=6) qui est utilisée, de comparaison Ces opérateurs employés dans une expression renvoient un résultat de type booléen (false ou true) comme dans n’importe quel langage lgorithmique (C, pascal, etc… ). Ce sont des opérateurs à deux opérandes. Opérateur priorité action exemples strictement inférieur inférieur ou égal -5 2;x+1 3 ; etc… trictement supérieur > 3 ; etc B1 En résumé: non booléen ! (5 < 2) ; < 3) ; etc... 7 booléen complet (5 - 2) 3) ; etc (5 2) (X+l 3); etc PAGF 51 compilateurs, moins possèdent une p-machine, Java est l'un de ces langages Nous décrivons ci-dessous le mode opératoire en Java. 12. 1 Bytecode et Compilation native Compilation native La compilation native consiste en la traduction du source java (éventuellement réalablement traduit instantanément en code intermédiare) en langage binaire exécutable sur la plate-forme concernée.
Ce genre de compilation est équivalent ? n’importe quelle compilation d’un langage dépendant de la plate- forme, li avantage est la rapidité d’exécution des instructions machines par le processeur central. Programe source java : xxx. Java portable Programe exécutable sous windows : xxx. exe non portable Bytecode La compilation en bytecode (ou pseudo-code ou p-code ou code intermédiaire) est semblable à l’idée du p-code de N. Wirth pour obtenir un portage multi plate-formes du pascal. L