Institut Universitaire de Technologie de CRETEIL-VITRY
Département de Génie Électrique et Informatique Industrielle
MC-II1 - PROGRAMMATION ORIENTEE OBJET
COURS
Java
Année universitaire 2013-2014
J. VILLEMEJANE - [email protected]
GEII - MC-II1 C 1
Programmation orientée objet (POO)
1. De la programmation procédurale à la programmation orientée objet
Les premiers langages de programmation étaient généralement constitués d’une suite d’instructions s’exécutant de
façon linéaire. Mais l’écriture d’une séquence d’instructions ligne à ligne était souvent fastidieuse et non appropriée à la
réalisation d’application plus conséquente.
Lapproche procédurale, permettant de structurer un programme, a permis d’améliorer la production de logiciel.
Des ensemble d’instructions ont pu être regroupées pour former des "fonctions" ou "procédures". Bien que cette nouvelle
approche fût une nette avancée dans le domaine de la programmation, elle n’était pas encore susante pour mener à bien
de lourds projets informatiques, en particulier dans la gestion des données séparée des procédures.
Une couche supplémentaire a été ajoutée afin de pouvoir associer les données et les procédures ensemble, regrou-
pées sous le terme d’objet. La programmation orientée objet va alors permettre (comme on le verra dans ce cours)
d’améliorer la réutilisation des outils et de favoriser leur spécialisation.
L’approche objet est fondée sur trois techniques :
— l’encapsulation : regroupement dans une même entité (appelée classe) des données et des procédures ;
— l’héritage : arborescence (ou hiérarchie) de classes permettant la spécialisation plus ou moins poussée d’une
classe ;
le polymorphisme : réaction diérente de deux objets (de classe diérente) à une même procédure.
IUT Créteil - GEII - MC-II1 - PROGRAMMATION ORIENTEE OBJET COURS
2. Et Java dans tout ça ?
Le langage Java est justement un des langages de programmation informatiques orientés objet les plus répandus dans
le monde (l’autre étant le C++). Java a été créé par James Gosling et Patrick Naughton, employés de Sun Microsystems
(racheté récemment par Oracle). Il a été présenté ociellement le 23 mai 1995 au SunWorld.
2.1. Un langage portable grâce aux machines virtuelles
La particularité principale de Java est que les logiciels écrits dans ce langage sont très facilement portables sur
plusieurs systèmes d’exploitation, avec peu voire aucune modification. La portabilité du code Java est assurée par la
machine virtuelle. La machine virtuelle eectue la traduction et l’exécution du bytecode en code natif. On parle alors
de langage semi-compilé ou semi-interprété.
2.2. Diérents types d’applications
Il est possible de développer diérents types d’applications :
des applications, sous forme de fenêtre ou de console ;
des applets, qui sont des programmes Java incorporés à des pages web ;
des applications pour appareils mobiles (J2ME) ;
et bien d’autres ! (J2EE : version entreprise, J3D : pour la 3D...
Java a donné naissance à un système d’exploitation (JavaOS), à des environnements de développement (eclipse/-
JDK), des machines virtuelles (MSJVM, JRE) applicatives multi plates-formes (JVM), une bibliothèque de conception
d’interface graphique (AWT/Swing).
2.3. Un langage pour le web
Java permet de développer des applications client-serveur. Côté client, les applets sont à l’origine de la notoriété
du langage. C’est surtout côté serveur que Java s’est imposé dans le milieu de l’entreprise grâce aux servlets, le pendant
serveur des applets, et plus récemment les JSP (JavaServer Pages) qui peuvent se substituer à PHP, ASP et ASP.NET.
3. Environnements de développement
3.1. Le JDK - Java Development Kit
C’est l’environnement minimal distribué par Sun, puis Oracle, pour les diérents systèmes d’exploitation. Actuelle-
ment, la dernière version proposée par Oracle est la version 7 pour la version standard.
Il existe plusieurs éditions du JDK :
Java Standard Edition (SE) : pour développer des applets ou des applications standard.
Java Enterprise Edition (EE) : pour développer des applications serveurs (base de données et servlets).
Java Micro Edition (ME) : pour développer des applications pour systèmes embarqués, téléphones, PDA.
3.2. Que contient le JDK ?
le compilateur javac
— l’interpréteur java (machine virtuelle)
un visualisateur d’applet appletviewer
l’ensemble des classes standard appelé API (Application Programming Interface)
un générateur de documentation javadoc
3.3. L’API de Java
L’API est un ensemble de classes prédéfinies d’usage général qui constituent une boite à outils pour les dévelop-
peurs.
Les classes sont regroupées en packages, permettant de faciliter la classification des plus de 3 700 classes que pro-
posent en standard l’API.
Une documentation de l’ensemble des classes de l’API est disponible sur le site d’Oracle (pour la version JavaSE 6) :
http ://download.oracle.com/javase/6/docs/api/index.html
–3–
IUT Créteil - GEII - MC-II1 - PROGRAMMATION ORIENTEE OBJET COURS
Les packages les plus usuels sont les suivants :
java.lang : classes de base du langage (chaines, nombres, maths, processus, exceptions...)
java.io : classes nécessaires aux entrées /sorties
java.awt : classes nécessaires à la création d’interface utilisateur
java.awt.event : classes nécessaires à la gestion des évènements
Les classes du package java.lang sont importées par défaut. Pour toutes les autres, il est nécessaire de les importer
manuellement grâce à la commande import.
3.4. Les environnements intégrés
Il existe plusieurs environnements de développement pour Java (encore appelés IDE) :
— Eclipse
— NetBeans
— ...
Ces derniers permettent de développer intégralement une application en Java en rassemblant l’ensemble des outils
nécessaires à l’écriture et à la compilation des codes sources.
–4–
GEII - MC-II1 C 2
Java : la syntaxe
La syntaxe du langage Java est proche de celle du C++ et donc proche de celle du C.
1. Conventions d’écriture
Les règles suivantes sont des conventions qui ont été adoptées par les concepteurs de Java et sont d’usage courant par
les développeurs.
Les noms des classes commencent par une majuscule
pour un nom composé : NomCompose
Les noms de constantes doivent être en majuscule
NOM ou NOM_COMPOSE
Les noms des autres attributs et méthodes commencent par des minuscules
nom ou nomCompose
2. Variables, Opérateurs et Tableaux de variables
2.1. Variables
Une variable est caractérisée par :
son adresse : endroit de stockage en mémoire du système (RAM généralement) ;
son type : nature de l’information déterminant aussi la taille en mémoire d’une variable ;
son identificateur : nom de la variable ;
sa valeur : contenu de la variable.
Il existe 4 types simples de variables : booléens,entiers,réels et caractères.
Type Valeur Nb de bits Par défaut
boolean true or false 1 false
char Unicode 16 ˘
0000’
byte entier signé 8 0
int entier signé 32 0
float IEEE 754 32 0.0
double IEEE 754 64 0.0
La déclaration d’une variable se fait de la façon suivante :
1int i ;
2double j , k =5 . 0 ;
2.2. Opérateurs
Les opérateurs permettent de faire des opérations sur des variables du même type.
Le principal opérateur est l’aectation (=). Il permet d’aecter une valeur (placée à droite du signe égal) à une
variable (placée à gauche du signe égal).
1 i =35;
2 k =i+25.1;
1 / 32 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans l'interface ou les textes ? Ou savez-vous comment améliorer l'interface utilisateur de StudyLib ? N'hésitez pas à envoyer vos suggestions. C'est très important pour nous!