SlideShare une entreprise Scribd logo
1  sur  24
Eléments syntaxiques
du langage Java
PROGRAMMATION OBJET
Jihen HEDHLI
Objectif
Présenter les bases syntaxiques de la programmation
objet avec Java.
Jihen Hedhli-Programmation Orientée Objet 2
Plan
oConventions d’écriture
oMots clés
oCommentaires
oIdentificateurs
oTypes
oDéclaration et initialisation d’un attribut
oClasse String
oTableau
oOpérateurs
oStructures conditionnelles
oStructures itératives
Jihen Hedhli-Programmation Orientée Objet 3
Conventions d’écriture
o Classe: Commence par une majuscule
class Robot, class HeloWorld
o Interface: Commence par la lettre I suivi par le premier
caractère du mot en majuscule
Interface IAccount
o Méthode et attribut: commencent par une minuscule
affiche(), getAge(), setAge(int a), int age, double moyen
o Constante : s’écrit en majuscule
PI, MAXIMUM, SEUIL
Jihen Hedhli-Programmation Orientée Objet 4
Mots clés
Jihen Hedhli-Programmation Orientée Objet 5
Commentaires
o // commentaire sur une seule ligne
o /* commentaires sur plusieurs lignes ligne1 ….
…………………………………………ligne2 */
o /** commentaires destinés à la documentation automatique
*nom d’un programme
* la version
* le réalisateur */
o Ces commentaires /**….*/ sont traités par l’exécutable JAVADOC
pour produire une documentation de l’API java
Jihen Hedhli-Programmation Orientée Objet 6
Identificateurs
◦ Chaque objet, classe, méthode et attribut (variable)est
associé à un identificateur
◦ Interdiction d’utiliser les mots-clés
◦ Commencent par :
une lettre
un « $ »
un « _ » (underscore)
◦ Ne commencent pas par :
un chiffre
un signe de ponctuation autre que « $ » ou « _ »
◦ Java est sensible la casse
Jihen Hedhli-Programmation Orientée Objet 7
Types
o Le type indique la nature de la valeur que va contenir la variable
o Java propose 2 types de données:
 Données primitives( type de base) : contient réellement la valeur
Il n’existe pas en java des types non signés.
Les classesWrapper sont les types objets associés au types primitifs
Jihen Hedhli-Programmation Orientée Objet
Type primitif Taille Classe wrapper
boolean 1-bit (true/false) Boolean
char 16-bit Character
byte 8-bit Byte
short 16-bit Short
int 32-bit Integer
long 64-bit Long
float 32-bit Float
double 64-bit Double
8
o Référence:
représente l’emplacement mémoire ou les informations de
l’objet vont être stockées objet
• o les attributs de l’objet
o Conversion de type
int a, b; a=5; b=8;
 Conversion implicite: float c= a+b;
 Conversion explicite float d= a+ (int) 4,8 ;
référence
Types
Jihen Hedhli-Programmation Orientée Objet
Déclaration et initialisation d’un attribut
◦ int âge; // déclaration ou bien int âge=12;
◦ âge=12; // initialisation
◦ float var= 23.233F; // Nombre suffixé par un F ou f
◦ long compt= 200L; // Nombre suffixé par un L ou l
◦ Char c=‘e’;
◦ final float pi = 3,14f; // déclaration de la constante pi
Jihen Hedhli-Programmation Orientée Objet
âge=12
type: int
nom: âge
10
C’est une classe qui représente le type des chaines de
caractères.
o Déclaration: String chaine1, chaine2;
o Initialisation: chaine1 = " Bonjour " ; chaine2= " DSI ";
o Concaténation: String res= chaine1+ " " +chaine2;
res contient " Bonjour DSI "
Classe String
Jihen Hedhli-Programmation Orientée Objet
Classe String
Chaine1
Chaine2
res
Jihen Hedhli-Programmation Orientée Objet
"Bonjour "
" DSI "
" Bonjour DSI "
12
Tableaux
Déclaration: int tab[ ] ou int [ ] tab;
Initialisation: int tableau[6]={1,2,4,9,5,0};
tableau
Jihen Hedhli-Programmation Orientée Objet
1
2
4
9
5
0
13
Opérateurs
o Opérateurs arithmétiques
Jihen Hedhli-Programmation Orientée Objet
opérateurs opération exemple
+ ajoute deux valeurs X+5
- soustrait deux valeurs X-8
* multiplie deux valeurs X*3
/ divise deux valeurs X/2
= affecte une valeur à
une variable
X=10
14
Opérateurs
◦ Opérateurs d’assignation
Jihen Hedhli-Programmation Orientée Objet
opérateurs opération exemple
+=
addition deux valeurs et stocke
le résultat dans la variable (à
gauche)
x+=5 x=x+5
-=
soustrait deux valeurs et stocke
le résultat dans la variable
x-=8 x=x-8
*=
multiplie deux valeurs et stocke
le résultat dans la variable
x*=3 x=x*3
/=
Divise deux valeurs et stocke le
résultat dans la variable
x/=2 x=x/2
%=
Applique la division euclidienne
et stocke le reste dans la
variable
x%=2 x=x%2
15
Opérateurs
◦ Opérateurs de comparaison
Jihen Hedhli-Programmation Orientée Objet
opérateurs exemple résultat
==
x == y Vrai si x est égal à y , faux
sinon
<
x < y Vrai si x est inférieur
strictement à y , faux
sinon
<=
x <= y Vrai si x est inférieur ou
égal à y , faux sinon
>
x > y Vrai si x est supérieur
strictement à y , faux
sinon
>=
x >= y Vrai si x est supérieur ou
égal à y , faux sinon
!=
x != y Vrai si x est différent de y
, faux sinon
16
Opérateurs
◦ Opérateurs logiques
Jihen Hedhli-Programmation Orientée Objet
opérateurs exemple Résultat
&&
expr1 && expr2
vrai si expr1 et expr2 vrai,
si expr1 est fausse, on
n’évalue pas expr2
& expr1 & expr2 Idem mais on évalue les
deux expressions
|| expr1 || expr2
faux si expr1 et expr2,
fausse, si expr1 est vrai, on
n’évalue pas expr2
| Expr1 | expr2 Idem mais on évalue les
deux expressions
! ! expr1 Vrai si expr1 est fausse
!= expr1 != expr2
Vrai si expr1 est différent
de expr2
? : a ? b : c
renvoie la valeur b si
l'expression a est vraie
sinon c.
17
Opérateurs
oPriorité d’opérateurs
Jihen Hedhli-Programmation Orientée Objet
les parenthèses ( )
les opérateurs
d'incrémentation
++ --
les opérateurs de
multiplication, division,
et modulo
* / %
les opérateurs
d'addition et
soustraction
+ -
les opérateurs de
comparaison
< > <=, >=
les opérateurs
d'égalité
== !=
l'opérateur ET logique &&
l'opérateur OU
logique
||
les opérateurs
d'assignement
= += -=
18
Structures conditionnelles
L’exécution des instructions se base sur la validation d’une expression
logique
◦ La structure if…else
 if (expression)
{
//instructions si expression est valide
}
 if (expression)
{
//instructions si expression est valide
}
else
{
//instructions si expression est non valide
}
Jihen Hedhli-Programmation Orientée Objet 19
Structures conditionnelles
En présence de plusieurs choix, la structure switch est la plus appropriée
◦ La structure switch
switch (Variable) {
caseValeur1 : Liste d'instructions
break;
caseValeur2 : Liste d'instructions
break;
caseValeurs n : Liste d'instructions
break;
default:
Liste d'instructions
break; }
o Le type de la variable est un type simple: int, short, char, byte
o Break: permet de quitter le bloc d’instruction immédiatement
Jihen Hedhli-Programmation Orientée Objet 20
Plusieurs types de boucles existent en java au même titre qu'en C ou
C++
o La structure while()
while ( condition )
{
... // code à exécuter dans la boucle
}
Le code s’exécute tant que la condition est vérifiée
o La structure do ..while()
do {
... // code à exécuter dans la boucle
} while ( condition ) ;
Structures itératives
Jihen Hedhli-Programmation Orientée Objet 21
Le code s’exécute jusqu’à la validation de la condition
o La structure for()
for ( initialisation; condition; incrément) {
... // code à exécuter dans la boucle
}
A partir d’une initialisation et tant que la condition est vérifiée, le
code s’exécute un nombre connu de fois
Structures itératives
Jihen Hedhli-Programmation Orientée Objet 22
Le débranchement d’un bloc d’instruction se fait par deux
instructions:
o La structure break
Permet l’arrêt de la boucle en cours.
Exemple:
for (int i=1; i<=10; i++) {
x = i-4;
if (x == 0) {
System.out.println("division par 0");
break;
}
System.out.println((float) (1/x));
}
Les débranchements
Jihen Hedhli-Programmation Orientée Objet
23
Débranchement
o La structure continue
s'utilise dans une boucle pour ignorer le reste des instructions et
passer directement à l'itération suivante.
Exemple:
Il est possible d’utiliser ces instructions avec un Label:
Continue [boucle1], break[boucle2]
for(int j=0; j<=10; j++){
if(j==5) continue;
System.out.println((float)(1/j-5))
}
Jihen Hedhli-Programmation Orientée Objet
24

Contenu connexe

Tendances

Chapitre6: Surcharge des opérateurs
Chapitre6:  Surcharge des opérateursChapitre6:  Surcharge des opérateurs
Chapitre6: Surcharge des opérateursAziz Darouichi
 
Chap 6 : classes et interfaces
Chap 6 : classes et interfacesChap 6 : classes et interfaces
Chap 6 : classes et interfacesAziz Darouichi
 
Chap1V2019: Cours en C++
Chap1V2019: Cours en C++Chap1V2019: Cours en C++
Chap1V2019: Cours en C++Aziz Darouichi
 
Initiation à l'algorithmique
Initiation à l'algorithmiqueInitiation à l'algorithmique
Initiation à l'algorithmiqueAbdoulaye Dieng
 
Cours langage c
Cours langage cCours langage c
Cours langage ccoursuniv
 
Formation C# - Cours 2 - Programmation procédurale
Formation C# - Cours 2 - Programmation procéduraleFormation C# - Cours 2 - Programmation procédurale
Formation C# - Cours 2 - Programmation procéduralekemenaran
 
Boosted Java to Native Interface (JNI)
Boosted Java to Native Interface (JNI)Boosted Java to Native Interface (JNI)
Boosted Java to Native Interface (JNI)Innobec
 
Chapitre5: Classes et objets
Chapitre5: Classes et objetsChapitre5: Classes et objets
Chapitre5: Classes et objetsAziz Darouichi
 
Java uik-chap3-bases java
Java uik-chap3-bases javaJava uik-chap3-bases java
Java uik-chap3-bases javaAmel Morchdi
 
Formation C# - Cours 3 - Programmation objet
Formation C# - Cours 3 - Programmation objetFormation C# - Cours 3 - Programmation objet
Formation C# - Cours 3 - Programmation objetkemenaran
 
Cours c#
Cours c#Cours c#
Cours c#zan
 
Cours structures des données (langage c)
Cours structures des données (langage c)Cours structures des données (langage c)
Cours structures des données (langage c)rezgui mohamed
 

Tendances (20)

Chapitre6: Surcharge des opérateurs
Chapitre6:  Surcharge des opérateursChapitre6:  Surcharge des opérateurs
Chapitre6: Surcharge des opérateurs
 
Chap 6 : classes et interfaces
Chap 6 : classes et interfacesChap 6 : classes et interfaces
Chap 6 : classes et interfaces
 
Programmation en C
Programmation en CProgrammation en C
Programmation en C
 
Tp introduction java
Tp introduction javaTp introduction java
Tp introduction java
 
Chap1V2019: Cours en C++
Chap1V2019: Cours en C++Chap1V2019: Cours en C++
Chap1V2019: Cours en C++
 
Le langage C
Le langage CLe langage C
Le langage C
 
Initiation à l'algorithmique
Initiation à l'algorithmiqueInitiation à l'algorithmique
Initiation à l'algorithmique
 
Chapitre2 prog dsplf3
Chapitre2 prog dsplf3Chapitre2 prog dsplf3
Chapitre2 prog dsplf3
 
Cours langage c
Cours langage cCours langage c
Cours langage c
 
Formation C# - Cours 2 - Programmation procédurale
Formation C# - Cours 2 - Programmation procéduraleFormation C# - Cours 2 - Programmation procédurale
Formation C# - Cours 2 - Programmation procédurale
 
Boosted Java to Native Interface (JNI)
Boosted Java to Native Interface (JNI)Boosted Java to Native Interface (JNI)
Boosted Java to Native Interface (JNI)
 
Ch08
Ch08Ch08
Ch08
 
Chapitre5: Classes et objets
Chapitre5: Classes et objetsChapitre5: Classes et objets
Chapitre5: Classes et objets
 
Java uik-chap3-bases java
Java uik-chap3-bases javaJava uik-chap3-bases java
Java uik-chap3-bases java
 
C# langage & syntaxe
C#   langage & syntaxeC#   langage & syntaxe
C# langage & syntaxe
 
langage C++
langage C++langage C++
langage C++
 
Formation C# - Cours 3 - Programmation objet
Formation C# - Cours 3 - Programmation objetFormation C# - Cours 3 - Programmation objet
Formation C# - Cours 3 - Programmation objet
 
Cours c#
Cours c#Cours c#
Cours c#
 
Le langage C
Le langage CLe langage C
Le langage C
 
Cours structures des données (langage c)
Cours structures des données (langage c)Cours structures des données (langage c)
Cours structures des données (langage c)
 

Similaire à Eléments syntaxiques du langage java-Jihen HEDHLI

POO_Java_BasesLangage.pdf
POO_Java_BasesLangage.pdfPOO_Java_BasesLangage.pdf
POO_Java_BasesLangage.pdfLarbaSAWADOGO2
 
02 Spécificité du C++ COURS SYS SYSSSSSS
02 Spécificité du C++  COURS SYS SYSSSSSS02 Spécificité du C++  COURS SYS SYSSSSSS
02 Spécificité du C++ COURS SYS SYSSSSSSAyoubElmrabet6
 
intro-csharp developement master 2 IF APP
intro-csharp developement master 2 IF APPintro-csharp developement master 2 IF APP
intro-csharp developement master 2 IF APPfrwebhelp
 
Formation en Python_Niveau1_2023.pptx
Formation en Python_Niveau1_2023.pptxFormation en Python_Niveau1_2023.pptx
Formation en Python_Niveau1_2023.pptxbetalab
 
programmation orienté objet c++
programmation orienté objet c++programmation orienté objet c++
programmation orienté objet c++coursuniv
 
CPP PTT DE CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
CPP PTT DE CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCPP PTT DE CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
CPP PTT DE CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCSiratiSoufiane
 
Les nouveautés de C++11 : Ecrire du C++ Moderne
Les nouveautés de C++11 : Ecrire du C++ ModerneLes nouveautés de C++11 : Ecrire du C++ Moderne
Les nouveautés de C++11 : Ecrire du C++ ModerneMicrosoft
 
cours developpement web javascript 2023/2024
cours developpement web javascript 2023/2024cours developpement web javascript 2023/2024
cours developpement web javascript 2023/2024YounesOuladSayad1
 
Eléments du langage Java.pdf
Eléments du langage  Java.pdfEléments du langage  Java.pdf
Eléments du langage Java.pdfAabidiHafid
 
seance4-1 php.ppt
seance4-1 php.pptseance4-1 php.ppt
seance4-1 php.pptAmineReal
 
Javascript un langage supérieur
Javascript un langage supérieurJavascript un langage supérieur
Javascript un langage supérieurFredy Fadel
 
Javascript pour les développeurs Java : quels sont les pièges à éviter ?
Javascript pour les développeurs Java : quels sont les pièges à éviter ?Javascript pour les développeurs Java : quels sont les pièges à éviter ?
Javascript pour les développeurs Java : quels sont les pièges à éviter ?FlorianBoulay
 
cours lanagage c avec des exemples d'application
cours lanagage c avec des exemples d'applicationcours lanagage c avec des exemples d'application
cours lanagage c avec des exemples d'applicationkamalomari2
 
Améliorations dans Java depuis la version 5
Améliorations dans Java depuis la version 5Améliorations dans Java depuis la version 5
Améliorations dans Java depuis la version 5Mamadou Oury Ba
 

Similaire à Eléments syntaxiques du langage java-Jihen HEDHLI (20)

POO_Java_BasesLangage.pdf
POO_Java_BasesLangage.pdfPOO_Java_BasesLangage.pdf
POO_Java_BasesLangage.pdf
 
02 Spécificité du C++ COURS SYS SYSSSSSS
02 Spécificité du C++  COURS SYS SYSSSSSS02 Spécificité du C++  COURS SYS SYSSSSSS
02 Spécificité du C++ COURS SYS SYSSSSSS
 
intro-csharp developement master 2 IF APP
intro-csharp developement master 2 IF APPintro-csharp developement master 2 IF APP
intro-csharp developement master 2 IF APP
 
Formation en Python_Niveau1_2023.pptx
Formation en Python_Niveau1_2023.pptxFormation en Python_Niveau1_2023.pptx
Formation en Python_Niveau1_2023.pptx
 
programmation orienté objet c++
programmation orienté objet c++programmation orienté objet c++
programmation orienté objet c++
 
CPP PTT DE CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
CPP PTT DE CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCPP PTT DE CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
CPP PTT DE CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
 
La première partie de la présentation PHP
La première partie de la présentation PHPLa première partie de la présentation PHP
La première partie de la présentation PHP
 
JAVA Chapitre6
JAVA Chapitre6JAVA Chapitre6
JAVA Chapitre6
 
Les nouveautés de C++11 : Ecrire du C++ Moderne
Les nouveautés de C++11 : Ecrire du C++ ModerneLes nouveautés de C++11 : Ecrire du C++ Moderne
Les nouveautés de C++11 : Ecrire du C++ Moderne
 
fortran 2.pdf
fortran 2.pdffortran 2.pdf
fortran 2.pdf
 
cours developpement web javascript 2023/2024
cours developpement web javascript 2023/2024cours developpement web javascript 2023/2024
cours developpement web javascript 2023/2024
 
Eléments du langage Java.pdf
Eléments du langage  Java.pdfEléments du langage  Java.pdf
Eléments du langage Java.pdf
 
seance4-1 php.ppt
seance4-1 php.pptseance4-1 php.ppt
seance4-1 php.ppt
 
Javascript un langage supérieur
Javascript un langage supérieurJavascript un langage supérieur
Javascript un langage supérieur
 
Javascript pour les développeurs Java : quels sont les pièges à éviter ?
Javascript pour les développeurs Java : quels sont les pièges à éviter ?Javascript pour les développeurs Java : quels sont les pièges à éviter ?
Javascript pour les développeurs Java : quels sont les pièges à éviter ?
 
Part1
Part1Part1
Part1
 
Pensez objets avec java
Pensez objets avec javaPensez objets avec java
Pensez objets avec java
 
cours lanagage c avec des exemples d'application
cours lanagage c avec des exemples d'applicationcours lanagage c avec des exemples d'application
cours lanagage c avec des exemples d'application
 
Améliorations dans Java depuis la version 5
Améliorations dans Java depuis la version 5Améliorations dans Java depuis la version 5
Améliorations dans Java depuis la version 5
 
Introduction a Java
Introduction a JavaIntroduction a Java
Introduction a Java
 

Dernier

Pas de vagues. pptx Film français
Pas de vagues.  pptx      Film   françaisPas de vagues.  pptx      Film   français
Pas de vagues. pptx Film françaisTxaruka
 
SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdfSKennel
 
Pharmacologie des cardiotoniques pour Pharmacie
Pharmacologie des cardiotoniques pour PharmaciePharmacologie des cardiotoniques pour Pharmacie
Pharmacologie des cardiotoniques pour PharmacieLoloshka
 
Apprendre avec des top et nano influenceurs
Apprendre avec des top et nano influenceursApprendre avec des top et nano influenceurs
Apprendre avec des top et nano influenceursStagiaireLearningmat
 
DIGNITAS INFINITA - DIGNITÉ HUMAINE; déclaration du dicastère .pptx
DIGNITAS INFINITA - DIGNITÉ HUMAINE; déclaration du dicastère .pptxDIGNITAS INFINITA - DIGNITÉ HUMAINE; déclaration du dicastère .pptx
DIGNITAS INFINITA - DIGNITÉ HUMAINE; déclaration du dicastère .pptxMartin M Flynn
 
Présentation - Initiatives - CECOSDA - OIF - Fact Checking.pptx
Présentation - Initiatives - CECOSDA - OIF - Fact Checking.pptxPrésentation - Initiatives - CECOSDA - OIF - Fact Checking.pptx
Présentation - Initiatives - CECOSDA - OIF - Fact Checking.pptxJCAC
 
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdfSKennel
 
Potentiel du Maroc en Produits du Terroir et Stratégie Adoptée pour le dévelo...
Potentiel du Maroc en Produits du Terroir et Stratégie Adoptée pour le dévelo...Potentiel du Maroc en Produits du Terroir et Stratégie Adoptée pour le dévelo...
Potentiel du Maroc en Produits du Terroir et Stratégie Adoptée pour le dévelo...NaimDoumissi
 
PIE-A2-P 5- Supports stagiaires.pptx.pdf
PIE-A2-P 5- Supports stagiaires.pptx.pdfPIE-A2-P 5- Supports stagiaires.pptx.pdf
PIE-A2-P 5- Supports stagiaires.pptx.pdfRiDaHAziz
 
Bibdoc 2024 - L’Éducation aux Médias et à l’Information face à l’intelligence...
Bibdoc 2024 - L’Éducation aux Médias et à l’Information face à l’intelligence...Bibdoc 2024 - L’Éducation aux Médias et à l’Information face à l’intelligence...
Bibdoc 2024 - L’Éducation aux Médias et à l’Information face à l’intelligence...Bibdoc 37
 
Faut-il avoir peur de la technique ? (G. Gay-Para)
Faut-il avoir peur de la technique ? (G. Gay-Para)Faut-il avoir peur de la technique ? (G. Gay-Para)
Faut-il avoir peur de la technique ? (G. Gay-Para)Gabriel Gay-Para
 
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdf
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdfSciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdf
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdfSKennel
 
Zotero avancé - support de formation doctorants SHS 2024
Zotero avancé - support de formation doctorants SHS 2024Zotero avancé - support de formation doctorants SHS 2024
Zotero avancé - support de formation doctorants SHS 2024Alain Marois
 
Bibdoc 2024 - Ecologie du livre et creation de badge.pdf
Bibdoc 2024 - Ecologie du livre et creation de badge.pdfBibdoc 2024 - Ecologie du livre et creation de badge.pdf
Bibdoc 2024 - Ecologie du livre et creation de badge.pdfBibdoc 37
 
Vulnérabilité numérique d’usage : un enjeu pour l’aide à la réussitepdf
Vulnérabilité numérique d’usage : un enjeu pour l’aide à la réussitepdfVulnérabilité numérique d’usage : un enjeu pour l’aide à la réussitepdf
Vulnérabilité numérique d’usage : un enjeu pour l’aide à la réussitepdfSylvianeBachy
 
Cours de Management des Systèmes d'information
Cours de Management des Systèmes d'informationCours de Management des Systèmes d'information
Cours de Management des Systèmes d'informationpapediallo3
 
Bernard Réquichot.pptx Peintre français
Bernard Réquichot.pptx   Peintre françaisBernard Réquichot.pptx   Peintre français
Bernard Réquichot.pptx Peintre françaisTxaruka
 
Presentation de la plateforme Moodle - avril 2024
Presentation de la plateforme Moodle - avril 2024Presentation de la plateforme Moodle - avril 2024
Presentation de la plateforme Moodle - avril 2024Gilles Le Page
 
Pas de vagues. pptx Film français
Pas de vagues.  pptx   Film     françaisPas de vagues.  pptx   Film     français
Pas de vagues. pptx Film françaisTxaruka
 
SciencesPo_Aix_InnovationPédagogique_Bilan.pdf
SciencesPo_Aix_InnovationPédagogique_Bilan.pdfSciencesPo_Aix_InnovationPédagogique_Bilan.pdf
SciencesPo_Aix_InnovationPédagogique_Bilan.pdfSKennel
 

Dernier (20)

Pas de vagues. pptx Film français
Pas de vagues.  pptx      Film   françaisPas de vagues.  pptx      Film   français
Pas de vagues. pptx Film français
 
SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_EtudiantActeur.pdf
 
Pharmacologie des cardiotoniques pour Pharmacie
Pharmacologie des cardiotoniques pour PharmaciePharmacologie des cardiotoniques pour Pharmacie
Pharmacologie des cardiotoniques pour Pharmacie
 
Apprendre avec des top et nano influenceurs
Apprendre avec des top et nano influenceursApprendre avec des top et nano influenceurs
Apprendre avec des top et nano influenceurs
 
DIGNITAS INFINITA - DIGNITÉ HUMAINE; déclaration du dicastère .pptx
DIGNITAS INFINITA - DIGNITÉ HUMAINE; déclaration du dicastère .pptxDIGNITAS INFINITA - DIGNITÉ HUMAINE; déclaration du dicastère .pptx
DIGNITAS INFINITA - DIGNITÉ HUMAINE; déclaration du dicastère .pptx
 
Présentation - Initiatives - CECOSDA - OIF - Fact Checking.pptx
Présentation - Initiatives - CECOSDA - OIF - Fact Checking.pptxPrésentation - Initiatives - CECOSDA - OIF - Fact Checking.pptx
Présentation - Initiatives - CECOSDA - OIF - Fact Checking.pptx
 
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_IA.pdf
 
Potentiel du Maroc en Produits du Terroir et Stratégie Adoptée pour le dévelo...
Potentiel du Maroc en Produits du Terroir et Stratégie Adoptée pour le dévelo...Potentiel du Maroc en Produits du Terroir et Stratégie Adoptée pour le dévelo...
Potentiel du Maroc en Produits du Terroir et Stratégie Adoptée pour le dévelo...
 
PIE-A2-P 5- Supports stagiaires.pptx.pdf
PIE-A2-P 5- Supports stagiaires.pptx.pdfPIE-A2-P 5- Supports stagiaires.pptx.pdf
PIE-A2-P 5- Supports stagiaires.pptx.pdf
 
Bibdoc 2024 - L’Éducation aux Médias et à l’Information face à l’intelligence...
Bibdoc 2024 - L’Éducation aux Médias et à l’Information face à l’intelligence...Bibdoc 2024 - L’Éducation aux Médias et à l’Information face à l’intelligence...
Bibdoc 2024 - L’Éducation aux Médias et à l’Information face à l’intelligence...
 
Faut-il avoir peur de la technique ? (G. Gay-Para)
Faut-il avoir peur de la technique ? (G. Gay-Para)Faut-il avoir peur de la technique ? (G. Gay-Para)
Faut-il avoir peur de la technique ? (G. Gay-Para)
 
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdf
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdfSciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdf
SciencesPo_Aix_InnovationPédagogique_Conférence_SK.pdf
 
Zotero avancé - support de formation doctorants SHS 2024
Zotero avancé - support de formation doctorants SHS 2024Zotero avancé - support de formation doctorants SHS 2024
Zotero avancé - support de formation doctorants SHS 2024
 
Bibdoc 2024 - Ecologie du livre et creation de badge.pdf
Bibdoc 2024 - Ecologie du livre et creation de badge.pdfBibdoc 2024 - Ecologie du livre et creation de badge.pdf
Bibdoc 2024 - Ecologie du livre et creation de badge.pdf
 
Vulnérabilité numérique d’usage : un enjeu pour l’aide à la réussitepdf
Vulnérabilité numérique d’usage : un enjeu pour l’aide à la réussitepdfVulnérabilité numérique d’usage : un enjeu pour l’aide à la réussitepdf
Vulnérabilité numérique d’usage : un enjeu pour l’aide à la réussitepdf
 
Cours de Management des Systèmes d'information
Cours de Management des Systèmes d'informationCours de Management des Systèmes d'information
Cours de Management des Systèmes d'information
 
Bernard Réquichot.pptx Peintre français
Bernard Réquichot.pptx   Peintre françaisBernard Réquichot.pptx   Peintre français
Bernard Réquichot.pptx Peintre français
 
Presentation de la plateforme Moodle - avril 2024
Presentation de la plateforme Moodle - avril 2024Presentation de la plateforme Moodle - avril 2024
Presentation de la plateforme Moodle - avril 2024
 
Pas de vagues. pptx Film français
Pas de vagues.  pptx   Film     françaisPas de vagues.  pptx   Film     français
Pas de vagues. pptx Film français
 
SciencesPo_Aix_InnovationPédagogique_Bilan.pdf
SciencesPo_Aix_InnovationPédagogique_Bilan.pdfSciencesPo_Aix_InnovationPédagogique_Bilan.pdf
SciencesPo_Aix_InnovationPédagogique_Bilan.pdf
 

Eléments syntaxiques du langage java-Jihen HEDHLI

  • 1. Eléments syntaxiques du langage Java PROGRAMMATION OBJET Jihen HEDHLI
  • 2. Objectif Présenter les bases syntaxiques de la programmation objet avec Java. Jihen Hedhli-Programmation Orientée Objet 2
  • 3. Plan oConventions d’écriture oMots clés oCommentaires oIdentificateurs oTypes oDéclaration et initialisation d’un attribut oClasse String oTableau oOpérateurs oStructures conditionnelles oStructures itératives Jihen Hedhli-Programmation Orientée Objet 3
  • 4. Conventions d’écriture o Classe: Commence par une majuscule class Robot, class HeloWorld o Interface: Commence par la lettre I suivi par le premier caractère du mot en majuscule Interface IAccount o Méthode et attribut: commencent par une minuscule affiche(), getAge(), setAge(int a), int age, double moyen o Constante : s’écrit en majuscule PI, MAXIMUM, SEUIL Jihen Hedhli-Programmation Orientée Objet 4
  • 6. Commentaires o // commentaire sur une seule ligne o /* commentaires sur plusieurs lignes ligne1 …. …………………………………………ligne2 */ o /** commentaires destinés à la documentation automatique *nom d’un programme * la version * le réalisateur */ o Ces commentaires /**….*/ sont traités par l’exécutable JAVADOC pour produire une documentation de l’API java Jihen Hedhli-Programmation Orientée Objet 6
  • 7. Identificateurs ◦ Chaque objet, classe, méthode et attribut (variable)est associé à un identificateur ◦ Interdiction d’utiliser les mots-clés ◦ Commencent par : une lettre un « $ » un « _ » (underscore) ◦ Ne commencent pas par : un chiffre un signe de ponctuation autre que « $ » ou « _ » ◦ Java est sensible la casse Jihen Hedhli-Programmation Orientée Objet 7
  • 8. Types o Le type indique la nature de la valeur que va contenir la variable o Java propose 2 types de données:  Données primitives( type de base) : contient réellement la valeur Il n’existe pas en java des types non signés. Les classesWrapper sont les types objets associés au types primitifs Jihen Hedhli-Programmation Orientée Objet Type primitif Taille Classe wrapper boolean 1-bit (true/false) Boolean char 16-bit Character byte 8-bit Byte short 16-bit Short int 32-bit Integer long 64-bit Long float 32-bit Float double 64-bit Double 8
  • 9. o Référence: représente l’emplacement mémoire ou les informations de l’objet vont être stockées objet • o les attributs de l’objet o Conversion de type int a, b; a=5; b=8;  Conversion implicite: float c= a+b;  Conversion explicite float d= a+ (int) 4,8 ; référence Types Jihen Hedhli-Programmation Orientée Objet
  • 10. Déclaration et initialisation d’un attribut ◦ int âge; // déclaration ou bien int âge=12; ◦ âge=12; // initialisation ◦ float var= 23.233F; // Nombre suffixé par un F ou f ◦ long compt= 200L; // Nombre suffixé par un L ou l ◦ Char c=‘e’; ◦ final float pi = 3,14f; // déclaration de la constante pi Jihen Hedhli-Programmation Orientée Objet âge=12 type: int nom: âge 10
  • 11. C’est une classe qui représente le type des chaines de caractères. o Déclaration: String chaine1, chaine2; o Initialisation: chaine1 = " Bonjour " ; chaine2= " DSI "; o Concaténation: String res= chaine1+ " " +chaine2; res contient " Bonjour DSI " Classe String Jihen Hedhli-Programmation Orientée Objet
  • 12. Classe String Chaine1 Chaine2 res Jihen Hedhli-Programmation Orientée Objet "Bonjour " " DSI " " Bonjour DSI " 12
  • 13. Tableaux Déclaration: int tab[ ] ou int [ ] tab; Initialisation: int tableau[6]={1,2,4,9,5,0}; tableau Jihen Hedhli-Programmation Orientée Objet 1 2 4 9 5 0 13
  • 14. Opérateurs o Opérateurs arithmétiques Jihen Hedhli-Programmation Orientée Objet opérateurs opération exemple + ajoute deux valeurs X+5 - soustrait deux valeurs X-8 * multiplie deux valeurs X*3 / divise deux valeurs X/2 = affecte une valeur à une variable X=10 14
  • 15. Opérateurs ◦ Opérateurs d’assignation Jihen Hedhli-Programmation Orientée Objet opérateurs opération exemple += addition deux valeurs et stocke le résultat dans la variable (à gauche) x+=5 x=x+5 -= soustrait deux valeurs et stocke le résultat dans la variable x-=8 x=x-8 *= multiplie deux valeurs et stocke le résultat dans la variable x*=3 x=x*3 /= Divise deux valeurs et stocke le résultat dans la variable x/=2 x=x/2 %= Applique la division euclidienne et stocke le reste dans la variable x%=2 x=x%2 15
  • 16. Opérateurs ◦ Opérateurs de comparaison Jihen Hedhli-Programmation Orientée Objet opérateurs exemple résultat == x == y Vrai si x est égal à y , faux sinon < x < y Vrai si x est inférieur strictement à y , faux sinon <= x <= y Vrai si x est inférieur ou égal à y , faux sinon > x > y Vrai si x est supérieur strictement à y , faux sinon >= x >= y Vrai si x est supérieur ou égal à y , faux sinon != x != y Vrai si x est différent de y , faux sinon 16
  • 17. Opérateurs ◦ Opérateurs logiques Jihen Hedhli-Programmation Orientée Objet opérateurs exemple Résultat && expr1 && expr2 vrai si expr1 et expr2 vrai, si expr1 est fausse, on n’évalue pas expr2 & expr1 & expr2 Idem mais on évalue les deux expressions || expr1 || expr2 faux si expr1 et expr2, fausse, si expr1 est vrai, on n’évalue pas expr2 | Expr1 | expr2 Idem mais on évalue les deux expressions ! ! expr1 Vrai si expr1 est fausse != expr1 != expr2 Vrai si expr1 est différent de expr2 ? : a ? b : c renvoie la valeur b si l'expression a est vraie sinon c. 17
  • 18. Opérateurs oPriorité d’opérateurs Jihen Hedhli-Programmation Orientée Objet les parenthèses ( ) les opérateurs d'incrémentation ++ -- les opérateurs de multiplication, division, et modulo * / % les opérateurs d'addition et soustraction + - les opérateurs de comparaison < > <=, >= les opérateurs d'égalité == != l'opérateur ET logique && l'opérateur OU logique || les opérateurs d'assignement = += -= 18
  • 19. Structures conditionnelles L’exécution des instructions se base sur la validation d’une expression logique ◦ La structure if…else  if (expression) { //instructions si expression est valide }  if (expression) { //instructions si expression est valide } else { //instructions si expression est non valide } Jihen Hedhli-Programmation Orientée Objet 19
  • 20. Structures conditionnelles En présence de plusieurs choix, la structure switch est la plus appropriée ◦ La structure switch switch (Variable) { caseValeur1 : Liste d'instructions break; caseValeur2 : Liste d'instructions break; caseValeurs n : Liste d'instructions break; default: Liste d'instructions break; } o Le type de la variable est un type simple: int, short, char, byte o Break: permet de quitter le bloc d’instruction immédiatement Jihen Hedhli-Programmation Orientée Objet 20
  • 21. Plusieurs types de boucles existent en java au même titre qu'en C ou C++ o La structure while() while ( condition ) { ... // code à exécuter dans la boucle } Le code s’exécute tant que la condition est vérifiée o La structure do ..while() do { ... // code à exécuter dans la boucle } while ( condition ) ; Structures itératives Jihen Hedhli-Programmation Orientée Objet 21
  • 22. Le code s’exécute jusqu’à la validation de la condition o La structure for() for ( initialisation; condition; incrément) { ... // code à exécuter dans la boucle } A partir d’une initialisation et tant que la condition est vérifiée, le code s’exécute un nombre connu de fois Structures itératives Jihen Hedhli-Programmation Orientée Objet 22
  • 23. Le débranchement d’un bloc d’instruction se fait par deux instructions: o La structure break Permet l’arrêt de la boucle en cours. Exemple: for (int i=1; i<=10; i++) { x = i-4; if (x == 0) { System.out.println("division par 0"); break; } System.out.println((float) (1/x)); } Les débranchements Jihen Hedhli-Programmation Orientée Objet 23
  • 24. Débranchement o La structure continue s'utilise dans une boucle pour ignorer le reste des instructions et passer directement à l'itération suivante. Exemple: Il est possible d’utiliser ces instructions avec un Label: Continue [boucle1], break[boucle2] for(int j=0; j<=10; j++){ if(j==5) continue; System.out.println((float)(1/j-5)) } Jihen Hedhli-Programmation Orientée Objet 24