4. 2
1. La programmation orientée objet
La Programmation Orientée Objet (POO) est un style de programmation où l’on
considère que les composants autonomes (les objets) disposent de ressources et de
moyens d’interaction entre eux.
La programmation procédurale suppose que le programmeur s’intéresse en priorité aux
traitements que son programme devra effectuer.
Identifier les traitements puis Ecrire les fonctions les données sont des paramètres
d’entrées aux fonctions
La programmation orientée objet propose une méthodologie centrée sur les données.
Identifier un ensemble d’objets, puis écrire les traitements On associe chaque
traitement à un objet donné.
Un objet peut être vu comme une entité regroupant un ensemble de données et de
méthodes (l’équivalent d’une fonction en C) de traitement.
Idée de base :
o Regrouper les données et les traitements relatifs à une même entité (réelle ou
conceptuelle) dans une entité informatique appelée objet.
o Un système d’information est un ensemble d’objets qui interagissent.
o Les modèles d’objets sont définis dans des classes.
Avantages :
o Meilleure modularité
o Maintenance aisée des applications
o Réutilisabilité des objets dans d’autres programmes
2. L’Objet
Les données de l’objet sont appelées des attributs. Elles indiquent son état à un instant
donné.
Les traitements (ou fonctions) de l’objet sont appelés des méthodes. Ils définissent son
comportement.
Chaque objet possède une identification unique qui est indiquée par une ou plusieurs
références.
L’objet peut se comporter comme une boite noire (le contenu est masqué par des contrôles
d’accès). Dans ce cas, quelques méthodes doivent assurer son intégration dans le système
(interface de service)
5. 3
Un objet est une variable (presque) comme les autres. Il faut notamment qu’il soit déclaré
avec son type. Le type d’un objet est un type complexe (par opposition aux types primitifs
entier, caractère, …) qu’on appelle une classe.
3. La Classe
La classe est un modèle de définition pour les objets ayant les mêmes propriétés.
Une classe doit être considérée comme un nouveau type défini par le concepteur.
Il existe des contrôles d’utilisation d’une classe.
La classe définie les contrôles (ou restrictions) d’accès aux membres (attributs et
méthodes) de ses objets.
Le contrôle d’utilisation d’une classe et celui d’accès aux membres d’une classe sont deux
concepts différents.
Une classe regroupe un ensemble de données (qui peuvent être des variables primitives
ou des objets) et un ensemble de méthodes de traitement de ces données et/ou de données
extérieures à la classe.
4. Le langage Java
Java est un langage de programmation orienté objet (pur), développé par
« Sun Microsystems» en 1995 et racheté par « Oracle » en 2009.
Java est multi-plateforme : il est conçu pour être indépendant de la machine exécutant le
code grâce à la JVM (Java Virtual Machine ou machine virtuelle de Java).
Java est interprété : le code source est compilé en pseudo code (byte code) puis exécuté
par la JVM.
Java est multithread : un thread est une entité d’exécution qui peut s’exécuter en parallèle
d’une manière concurrente à d’autres threads au sein d’une même application.
Java est dynamique : les composants d’une application (les classes) sont chargés au
lancement de l’application.
4.1. Exécution d’un programme Java
Source Java :
Le fichier source d’un programme java est un fichier texte dont l’extension est « .java »
Une application peut être constituée de plusieurs fichiers sources.
6. 4
Pseudo code Java :
Un fichier source Java est compilé pour générer le pseudo code (ou byte code) sous
forme d’un fichier dont l’extension est « .class »
Interprétation :
La JVM (nommé interpréteur Java) qui tourne sur une plateforme donnée est capable
d’interpréter le byte code et le transforme en code binaire exécutable par le processeur.
Figure 1.1. Les étapes pour exécuter un programme Java
4.2. Structure générale d’une application indépendante
Une application Java indépendante possède un point d’entrée unique qui est la méthode
(ou fonction) « main () » de prototype :
public static void main (String[] args)
En Java, tout se trouve dans une classe. Il ne peut y avoir de déclarations ou de code en
dehors du corps d’une classe.
Une classe ne contient pas directement du code. Elle contient des déclarations de variables
(attributs) et des méthodes (fonctions).
Une méthode peut contenir du code et des déclarations de variables locales.
Tout fichier source doit porter le nom de la classe publique qu’il contient avec
l’extension « .java »
Les arguments sont contenus dans le tableau args.
7. 5
Exemple :
public class Exemple
{
//déclaration des attributs
//définition des méthodes
public static void main (String [] args)
{
//déclaration des variables locales
System.out.println(“Bonjour”);
}
}
5. Outils de développement
Le JDK (Java Development Kit) est le kit de développement de base qui est proposé
gratuitement. Il contient plusieurs outils qu’on peut appeler par de simples commandes :
o javac : le compilateur java
o java : l’interpréteur d’application (JVM)
o jar : un compresseur de classes Java
o appletviewer : un interpréteur d’applet
o …..
La JRE (Java Runtime Environment) doit être installée sur les machines qui exécuteront
des programmes Java. La JRE contient la JVM, des librairies et d’autres composants
nécessaires à l’exécution des applets et des applications Java.
LE JDK contient lui-même le JRE.
Figure 1.2. Les environnements Java
8. 6
Environnement de Développement Intégrés (EDI ou IDE en anglais) :
o Kawa, JBuilder, Visual J++, Eclipse, Netbeans, ….
6. Références
Claude Delannoy : programmer en java, ISBN10 : 2212135661, Eyrolles 2012.
M. Bouzeghoub, G. Gardarin, P. Valduriez, Les objets, Eyrolles 1998.
E.Puybaret, Java - 1 Premières applications professionnelles en Java, Les Cahiers du
Programmeur 2003.
G.Clavel, et al., Java, La synthèse, Dunod 2003.
H. Bersini, La programmation orientée objet, Cours et exercices en UML 2, avec Java, C#
2, C++, Python, PHP 5 et LINQ, Eyrolles 2008
C.Delannoy, S'initier à la programmation : Avec des exemples en C, C++, C#, Java et
PHP, Eyrolles, 2008
Sites Web
www.java.com : site officiel Java (JDK et doc.)
https://www.javaworld.com : Infos sur Java
https://www.oracle.com/fr/java/ : Logiciel Java