Vous êtes sur la page 1sur 33

ESIEE Paris 2012

© Denis BUREAU 1

IN101

Initiation
à la programmation
avec le langage Java
IN101 - Cours 1.1 -
ESIEE Paris 2012
© Denis BUREAU 2

Cours 1.1

• I. Introduction à la
Programmation Orientée Objet
• II. Classes et objets
• III. Attributs et types de données
• IV. Méthodes et paramètres
• V. Syntaxe
IN101 - Cours 1.1 - I.
ESIEE Paris 2012
© Denis BUREAU 3

I. Introduction à la Programmation Orientée Objet

• I.1 Programmation "classique"  

• I.2 P.O.O.

• I.3 Encapsulation
IN101 - Cours 1.1 – I.1
ESIEE Paris 2012
© Denis BUREAU 4

I.1 Programmation "classique"

Programmation
procédurale/structurée
(risques, maintenance)
IN101 - Cours 1.1 – I.2
ESIEE Paris 2012
© Denis BUREAU 5

I.2 P.O.O.
IN101 - Cours 1.1 – I.3
ESIEE Paris 2012
© Denis BUREAU 6

I.3. Encapsulation

• données privées

• services publics
IN101 - Cours 1.1 - I.
ESIEE Paris 2012
© Denis BUREAU 7

I. Introduction à la Programmation Orientée Objet

• I.1 Programmation "classique"  

• I.2 P.O.O.

• I.3 Encapsulation
IN101 - Cours 1.1 – II
ESIEE Paris 2012
© Denis BUREAU 8

II. Classes et objets

• II.1 Classe
• II.2 Objet
• II.3 Exemple: classe Cercle
• II.4 Vocabulaire
IN101 - Cours 1.1 – II.1
ESIEE Paris 2012
© Denis BUREAU 9

II.1 Classe

• modèle (modélisation, subjective)


• moule, emporte-pièce
• description textuelle
• statique
IN101 - Cours 1.1 – II.2
ESIEE Paris 2012
© Denis BUREAU 10

II.2 Objet

• exemplaire (de la classe)


• morceau de pâte (de la même forme)
• en mémoire
• dynamique (est créé, modifié, détruit)
IN101 - Cours 1.1 – II.3
ESIEE Paris 2012
© Denis BUREAU 11

II.3 Exemple: classe Cercle 1/2


IN101 - Cours 1.1 – II.3
ESIEE Paris 2012
© Denis BUREAU 12

II.3 Exemple: classe Cercle 2/2


IN101 - Cours 1.1 – II.4
ESIEE Paris 2012
© Denis BUREAU 13

II.4 Vocabulaire

• instance (= exemplaire d’une classe)


• instancier (= créer une instance, un objet)
• instanciation (= création d’une instance)
• variable d'instance (= attribut)
IN101 - Cours 1.1 – II
ESIEE Paris 2012
© Denis BUREAU 14

II. Classes et objets

• II.1 Classe
• II.2 Objet
• II.3 Exemple: classe Cercle
• II.4 Vocabulaire
IN101 - Cours 1.1 – III
ESIEE Paris 2012
© Denis BUREAU 15

III. Attributs et types de données

• III.1 Nombre entier


• III.2 Valeur logique
• III.3 Mot ou phrase
• III.4 Initialisation des attributs
IN101 - Cours 1.1 – III.1
ESIEE Paris 2012
© Denis BUREAU 16

III.1 Nombre entier

• 4 octets => 32 bits => 2^32 nombres


• [ -2^31 , +2^31 ] ? Non, +2^31 – 1 ]
• environ -2 milliards à +2 milliards
• Lire ce document (chapitres 1 & 2) sur la
représentation des entiers et les
débordements arithmétiques.
IN101 - Cours 1.1 – III.2
ESIEE Paris 2012
© Denis BUREAU 17

III.2 Valeur logique

• = booléenne
• seulement 2 valeurs :
• vrai ou faux (pas 0 ou 1 !)
• utile dans les conditions
• résultat des comparaisons
IN101 - Cours 1.1 – III.3
ESIEE Paris 2012
© Denis BUREAU 18

III.3 Mot ou phrase

• chaîne de caractères

• 0 ou 1 ou N caractères

• lettres, chiffres, symboles, espace, …


IN101 - Cours 1.1 – III.4
ESIEE Paris 2012
© Denis BUREAU 19

III.4 Initialisation des attributs

• donner sa valeur initiale

• déclenchée automatiquement
pour éviter un état incohérent

• valeur par défaut pour chaque type


IN101 - Cours 1.1 – III
ESIEE Paris 2012
© Denis BUREAU 20

III. Attributs et types de données

• III.1 Nombre entier


• III.2 Valeur logique
• III.3 Mot ou phrase
• III.4 Initialisation des attributs
IN101 - Cours 1.1 - IV
ESIEE Paris 2012
© Denis BUREAU 21

IV. Méthodes et paramètres

• IV.1 Méthode
• IV.2 Trois sortes de méthodes
• IV.3 Paramètre
• IV.4 Variable locale
IN101 - Cours 1.1 – IV.1
ESIEE Paris 2012
© Denis BUREAU 22

IV.1 Méthode
• IV.1.1 Utilité
éviter la duplication de code
• IV.1.2 Comment la définir ?
retour + nom + paramètres = signature,
instructions = corps
• IV.1.3 Surcharge
plusieurs méthodes de la même classe
de même nom, mais signatures différentes
IN101 - Cours 1.1 – IV.2
ESIEE Paris 2012
© Denis BUREAU 23

IV.2 Trois sortes de méthodes : 1/3

• IV.2.1 Fonction

• retourne 1 valeur et 1 seule


• préciser son type (1 des 3 déjà vus)
• appelée sur un objet
(diamètre de quel cercle ?)
IN101 - Cours 1.1 – IV.2
ESIEE Paris 2012
© Denis BUREAU 24

IV.2 Trois sortes de méthodes : 2/3

• IV.2.1 Procédure

• ne retourne rien
• le dire !
• appelée sur un objet
(efface quel cercle ?)
IN101 - Cours 1.1 – IV.2
ESIEE Paris 2012
© Denis BUREAU 25

IV.2 Trois sortes de méthodes : 3/3

• IV.2.1 Constructeur

• très spéciale
• Ne rien dire !
• N’est pas appelée sur un objet,
appelée automatiquement à la création
• Rôle : initialiser les attributs
IN101 - Cours 1.1 – IV.3
ESIEE Paris 2012
© Denis BUREAU 26

IV.3 Paramètre

• information supplémentaire fournie


à une méthode (deplace: ΔX ΔY)
• absence possible (efface)
• sinon ordre important
• Comment le définir ?
type, nom
(pas de public / privé !)
IN101 - Cours 1.1 – IV.4
ESIEE Paris 2012
© Denis BUREAU 27

IV.4 Variable locale

• Dans un bloc (voire une sous-partie)


• ni attribut (=> non initialisée) ni paramètre
• Comment la définir ?
type, nom
• ni publique ni privée
IN101 - Cours 1.1 - IV
ESIEE Paris 2012
© Denis BUREAU 28

IV. Méthodes et paramètres

• IV.1 Méthode
• IV.2 Trois sortes de méthodes
• IV.3 Paramètre
• IV.4 Variable locale
IN101 - Cours 1.1 – V
ESIEE Paris 2012
© Denis BUREAU 29

V. Syntaxe

• V.1 Généralités

• V.2 Nommage
IN101 - Cours 1.1 – V.1
ESIEE Paris 2012
© Denis BUREAU 30

V.1 Généralités
• V.1.1 Différence min/maj (importante)
• V.1.2 Espacement : significatif entre 2 mots,
indifférent sinon, un ou plusieurs
[ESPACE] / [TABULATION] / [ENTREE]
• V.1.3 "Indentation" (décalages/alignements,
reflètent la structure)
• V.1.4 Présentation/style : guide de style
• V.1.5 vérifiée à la compilation, => erreurs =>
BIEN LIRE LES MESSAGES D'ERREUR
• Attention ! L'erreur se trouve souvent à la fin
de la ligne du dessus. ;
IN101 - Cours 1.1 – V.2
ESIEE Paris 2012
© Denis BUREAU 31

V.2 Nommage
(Obligations et Conventions obligatoires)

• V.2.1 O: Identificateur : lettres, chiffres, _,


sans chiffre initial, sauf mot réservé
• V.2.2 C: UneClasse (majuscule initiale) =>
O: fichier UneClasse.java (UneClasse.class)
• V.2.3 C: aNomAttribut, verbeMethode(),
pNomParametre, vNomVariableLocale
• V.2.4 O: exception: le constructeur
(= nom de la classe), contradiction ?
IN101 - Cours 1.1 – V
ESIEE Paris 2012
© Denis BUREAU 32

V. Syntaxe

• V.1 Généralités

• V.2 Nommage
IN101 - Cours 1.1 -
ESIEE Paris 2012
© Denis BUREAU 33

A apprendre :
• I. Introduction à la
Programmation Orientée Objet
• II. Classes et objets
• III. Attributs et types de données
• IV. Méthodes et paramètres
• V. Syntaxe
Lire le poly :
pages situées avant le chapitre 1,
sections 1 à 2.2 et annexes 6 & 7

Vous aimerez peut-être aussi