JAVA PROGRAMMATION OBJET

Documents pareils
Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java


1. Structure d un programme C. 2. Commentaire: /*..texte */ On utilise aussi le commentaire du C++ qui est valable pour C: 3.

INF 321 : mémento de la syntaxe de Java

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

Structure d un programme et Compilation Notions de classe et d objet Syntaxe

Plan du cours. Historique du langage Nouveautés de Java 7

Rappels Entrées -Sorties

Programmer en JAVA. par Tama

Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation 24 octobre 2007impérative 1 / 44 et. structures de données simples

Introduction à Java. Matthieu Herrb CNRS-LAAS. Mars

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

Notions fondamentales du langage C# Version 1.0

1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles)

SUPPORT DE COURS. Langage C

ALGORITHMIQUE ET PROGRAMMATION ORIENTEE OBJET

IN Cours 1. 1 Informatique, calculateurs. 2 Un premier programme en C

Programmation en langage C d un µcontrôleur PIC à l aide du compilateur C-CCS Sommaire

Informatique / Programmation

Introduction au langage C

Algorithmique et Programmation, IMA

Programmation en langage C

Java Licence Professionnelle CISII,

Cours intensif Java. 1er cours: de C à Java. Enrica DUCHI LIAFA, Paris 7. Septembre Enrica.Duchi@liafa.jussieu.fr

Langage C. Patrick Corde. 22 juin Patrick Corde ( Patrick.Corde@idris.fr ) Langage C 22 juin / 289

as Architecture des Systèmes d Information

TD3: tableaux avancées, première classe et chaînes

TP 1. Prise en main du langage Python

Le Langage C Version 1.2 c 2002 Florence HENRY Observatoire de Paris Université de Versailles florence.henry@obspm.fr

Langage et Concepts de ProgrammationOrientée-Objet 1 / 40

Introduction à l algorithmique et à la programmation M1102 CM n 3

Représentation d un entier en base b

Java Licence Professionnelle CISII,

DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51

Aide mémoire UML & Java 1ère partie : Introduction. marc.lemaire@u-cergy.fr

Logiciel de Base. I. Représentation des nombres

Cours de C++ François Laroussinie. 2 novembre Dept. d Informatique, ENS de Cachan

Claude Delannoy. 3 e édition C++

V- Manipulations de nombres en binaire

Le langage C. Introduction, guide de reference

INITIATION AU LANGAGE JAVA

STAGE IREM 0- Premiers pas en Python

PROGRAMMER EN MQL4. Apprenez à automatiser vos stratégies sur MetaTrader 4

UE C avancé cours 1: introduction et révisions

Bases de programmation. Cours 5. Structurer les données

Anis ASSÈS Mejdi BLAGHGI Mohamed Hédi ElHajjej Mohamed Salah Karouia

Utilisation d objets : String et ArrayList

Initiation à la programmation en Python

Présentation du langage et premières fonctions

REPUBLIQUE ALGERIENNE DEMOCRATIQUE ET POPULAIRE UNIVERSITE M HAMED BOGARA DE BOUMERDES

Solutions du chapitre 4

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

Programme Compte bancaire (code)

Conventions d écriture et outils de mise au point

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile

Le Langage C Licence Professionnelle Qualité Logiciel Pr. Mouad BEN MAMOUN ben_mamoun@fsr.ac.ma Année universitaire 2011/2012

Les bases de l informatique et de la programmation. École polytechnique

Langage Éric Guérin 5 octobre 2010

Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if

PROGRAMMATION PAR OBJETS

Introduction à MATLAB R

Cours d Algorithmique et de Langage C v 3.0

Programmation en Java IUT GEII (MC-II1) 1

LMI 2. Programmation Orientée Objet POO - Cours 9. Said Jabbour. jabbour@cril.univ-artois.fr

Programmation C. J.-F. Lalande. 15 novembre 2012

Les chaînes de caractères

INITIATION A LA PROGRAMMATION

Une introduction à Java

ALGORITHMIQUE ET PROGRAMMATION En C

UE Programmation Impérative Licence 2ème Année

1. Langage de programmation Java

Découverte de Python

Polycopié Cours Programmation Orientée Objet sous Java Programme : Filière SMI S5

Langage Java. Classe de première SI

MICROINFORMATIQUE NOTE D APPLICATION 1 (REV. 2011) ARITHMETIQUE EN ASSEMBLEUR ET EN C

Cours 1 : Introduction. Langages objets. but du module. contrôle des connaissances. Pourquoi Java? présentation du module. Présentation de Java

Informatique Générale

Programmation en C. École Nationale Supérieure de Techniques Avancées. Pierre-Alain Fouque et David Pointcheval

Codage d information. Codage d information : -Définition-

Les structures de données. Rajae El Ouazzani

Définition 0,752 = 0,7 + 0,05 + 0,002 SYSTÈMES DE NUMÉRATION POSITIONNELS =

TP, première séquence d exercices.

DU BINAIRE AU MICROPROCESSEUR - D ANGELIS CIRCUITS CONFIGURABLES NOTION DE PROGRAMMATION

Méthodes de programmation systèmes UE n NSY103. Notes de cours. Nombre d'heures : 55h (~ cours de 3 heures)

Programmation Classique en langage C

BTS IRIS Cours et Travaux Pratiques. Programmation C. A. Lebret, TSIRIS, Lycée Diderot, 1995/06. en conformité avec le référentiel du BTS IRIS

Rappel. Analyse de Données Structurées - Cours 12. Un langage avec des déclaration locales. Exemple d'un programme

Grandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test

Architecture des ordinateurs

Programmation Orientée Objet Java

Programmation Orientée Objets Le Langage JAVA

SHERLOCK 7. Version du 01/09/09 JAVASCRIPT 1.5

Création et Gestion des tables

Cours d initiation à la programmation en C++ Johann Cuenin

COMPARAISONDESLANGAGESC, C++, JAVA ET

Cours d Informatique

Architecture de l ordinateur

Atelier C TIA Portal CTIA04 : Programmation des automates S7-300 Opérations numériques

Introduction au Langage de Programmation C

Initiation à la Programmation Java

Transcription:

JAVA PROGRAMMATION OBJET Abdellatif HAIR Université Sultan Moulay Slimane Faculté des Sciences et Techniques B.P. 523, Béni-Mellal, MAROC

JAVA : LES BASES

IDENTIFICATEURS, INSTRUCTIONS ET BLOCS La syntaxe et les instructions de base en JAVA sont très proches de celles du C/C++ : Les identificateurs commencent par une lettre ou par _ Attention, Java distingue minuscules et majuscules Les espaces entre instructions sont ignorés Les instructions sont OBLIGATOIREMENT terminées par un point-virgule ; (cet oubli est une erreur fréquente de compilation) Un bloc ou séquence est un regroupement ordonné d'instructions Un bloc est délimité par un couple d'accolades {...}

LES COMMENTAIRES Java supporte trois types de commentaires : Les caractères "//" définissent un commentaire sur une et une seule ligne qui s étend jusqu au retour chariot de fin de ligne Les signes "/*" et "*/" peuvent être utilisés pour placer des commentaires sur plusieurs lignes Les lignes de code qui commencent par les caractères "/**" et se terminent par "*/", contiennent des commentaires qui seront automatiquement insérés dans un document HTML lors de l exécution de javadoc

LES TYPE DE DONNÉES PRÉDÉFINIS Nombres entiers : byte -2^7, (2^7 )-1-128,127 short -2^15, (2^15)-1-32768,32767 int -2^31, (2^31)-1-2147483648, 2147483647 long -2^63, (2^63)-1 19223372036854775808, 9223372036854775807 Les entiers peuvent être exprimés en octal (0323), en décimal (311) ou en hexadécimal (0x137)

LES TYPE DE DONNÉES PRÉDÉFINIS Nombres réels : float simple précision sur 32 bits 1.4023984 e-45 3.40282347 e38 double double précision sur 64 bits 4.94065645841243544 e-324 1.79769313486231570 e308 Représentation des réels dans le standard IEEE 754. Un suffixe f ou d après une valeur numérique permet de spécifier le type. Exemples : double x = 145.56d ; float y = 23.4f ; float f = 23.65 ; // Erreur

LES TYPE DE DONNÉES PRÉDÉFINIS boolean char Valeurs true et false Un entier non nul est également assimilé à true Un entier nul est assimilé à false Une variable de type char contient un seul caractère codé sur 16 bits (jeu de caractères 16 bits Unicode contenant 34168 caractères). Des caractères d'échappement existent : \b retour arrière \t Tabulation horizontale \n saut de ligne \f saut de page \r retour chariot \" Guillemet \' Apostrophe \xdd Valeur hexadécimale \\ BackSlash \Oddd Valeur octale \udddd Caractère Unicode dddd hexadécimale

LES TYPE DE DONNÉES PRÉDÉFINIS Chaînes de caractères Les chaînes de caractères sont manipulées par la classe String (ce n'est donc pas un type de données) Exemples : String str = "exemple de chaîne de caractères" ; String chaine = "Le soleil " + "brille" ; // Opérateur de concaténation

LES TYPE DE DONNÉES PRÉDÉFINIS Les tableaux tableaux peuvent être déclarés suivant les syntaxes suivantes : Exemple type [ ] nom ; type nom [ ] ; int table [ ] ; double [ ] d1,d2 ; Pas de tableau statique La taille d'un tableau est allouée dynamiquement par l opérateur new table = new int [10] ; int table2 [ ] = new int [20] ; int table3 [ ] = {1,2,3,4,5} ;

LES TYPE DE DONNÉES PRÉDÉFINIS Les tableaux La taille n'est pas modifiable et peut être consultée par la propriété length System.out.println (table3.length) ; int [ ] [ ] Matrice = new int [10][20] ; System.out.println (Matrice.length) ; // 1ère dimension System.out.println (Matrice[0].length) ;//2èmedimension

LES OPÉRATEURS Les opérateurs Java sont voisins du C Opérateur d affectation symbole description arité exemple opérateur d affectation = affectation 2 x = 2 = soustraction et affectation += addition et affectation 2 x = 2 2 x += 2 On dispose du raccourci : x = y = z = 2

LES OPÉRATEURS Opérateurs arithmétiques à deux opérandes symbole description arité exemple opérateurs arithmétiques à deux opérande soustraction 2 y x * multiplication 2 3 * x / division 2 4 / 2 % modulo (reste de la division) 2 5 % 2 Il n existe pas en Java d opérateur d exponentiation. Pour effectuer une exponentiation, il convient d utiliser la fonction pow(double a, double b) de la classe java.lang.math La division des entiers fournit un résultat tronqué et non arrondi

LES OPÉRATEURS Opérateurs à un opérande symbole description arité exemple opérateurs à un opérande opposé 1 x ++ pré-incrémentation 1 ++x ++ postincrémentation 1 x++ -- pré-décrémentation 1 --x -- postdécrémentation 1 x--

Opérateurs relationnels LES OPÉRATEURS symbole description arité exemple opérateurs relationnels == équivalent 2 x == 0 < plus petit que 2 x < 2 > plus grand que 2 x > 2 <= plus petit ou égal 2 x <= 3 >= plus grand ou égal 2 x >= 3!= non équivalent 2 a!= b

Opérateurs logiques LES OPÉRATEURS symbole description arité exemple Opérateurs logiques && et 2 a && b ou 2 a b! non 1!a L évaluation des expressions logiques est stoppées dès lors que le résultat est déterminé L évaluation partielle optimise le code mais peut avoir des effets indésirables Une manière de forcer l évaluation consiste à utiliser les opérateurs d arithmétique binaire

LES OPÉRATEURS Opérateurs d arithmétique binaire symbole description arité exemple Opérateurs d arithmique binaire & et 2 a & b ou 2 a b ^ ou exclusif 2 a ^ b ~ non 1 ~a << décalage à gauche 2 a << 2 >> décalage à droite 2 b >> 2 >>> décalage à droite sans extension du signe 2 b >>> 2

LES OPÉRATEURS Opérateurs d arithmétique binaire Les opérateurs d arithmétiques binaires agissent au niveau des bits de données, sans tenir compte de ce qu ils représentent Rappelons que le bit de signe (des types entiers) est le bit de poids fort On peut utiliser les opérateurs d arithmétique binaire avec des valeurs logiques, qui sont des valeurs sur 1 bit. L intérêt de cette possibilité est que, s agissant d opérateurs arithmétiques, ils sont toujours évalués

LES OPÉRATEURS Opérateur à trois opérandes symbole description arité exemple opérateur à trois opérandes? : condition? vrai : faux 3 y < 5? 4 * y : 2 * y Si condition est vrai, alors on retourne l évaluation de l expression vrai, sinon on retourne celle de faux.

LES STRUCTURES DE CONTRÔLE Les structures de contrôle sont presque les mêmes que celles utilisées en C ou en C++. On les rappelle ci-dessous en précisant les spécificités Java. structure de contrôle retour d une méthode syntaxe return ; return (type de retour) ; commentaires cas d une méthode void

LES STRUCTURES DE CONTRÔLE Structure de contrôle instruction conditionnelle if Syntaxe if (expression) instruction ; if (expression) {bloc d instructions } Commentaires les parenthèses sont obligatoire en Java autour de l expression booléenne. De même le point-virgule est obligatoire en fin de bloc.

LES STRUCTURES DE CONTRÔLE structure de contrôle syntaxe commentaires instruction conditionnelle else instruction conditionnelle else if if (expression) instruction ; else instruction ; if (expression) {bloc d instructions} else {bloc d instructions} if (expression) {bloc d instructions} else if {bloc d instructions} else if {bloc d instructions} else {bloc d instructions} Il s agit en fait d une structure de contrôle à part entière écrite en deux mots!

LES STRUCTURES DE CONTRÔLE structure de contrôle syntaxe la boucle for for(initialisation ; test ; incrémentation) {bloc d instructions} utilisation de break et continue dans break ; commentaires la partie initialisation se compose d une ou plusieurs initialisations (séparées par des virgules). La partie test est une expression booléenne. La partie incrémentation peut contenir plusieurs instructions séparées par des virgules. Interruption de l itération en cours et passage à l instruction suivant la boucle. les boucles continue ; Interruption de l itération en cours et retour au début de la boucle avec exécution de la partie incrémentation.

LES STRUCTURES DE CONTRÔLE structure de contrôle l instruction while l instruction switch syntaxe while (expression booléenne) {bloc d instructions} switch (variable) case valeur1 : instructions1 ; case valeur2 : instructions2 ; default : instructions ; commentaires Les bloc sont délimités par deux instructions case! Lorsqu une égalité est trouvée, le bloc d instruction correspondant est exécuté, ainsi que tous les blocs suivant! Pour qu un seul bloc ne soit exécuté, il faut utiliser explicitement l instruction break.