C01-Introduction Et Premiere Application
C01-Introduction Et Premiere Application
C01-Introduction Et Premiere Application
Informations pratiques
1
Informations pratiques
◼ Cours / TP: Salles (B11/B2), site ENSAJ
❑ Prof. Asmaa EL HANNANI
❑ elhannani.a@ucd.ac.ma
Règles d’or
2
Organisation
◼ ~1H50 de cours
❑ Cours / TD
Evaluation
3
Objectifs du cours
◼ API: http://docs.oracle.com/javase/8/docs/api
◼ JDKs:
http://www.oracle.com/technetwork/java/javase/downloads
◼ Forums:
https://community.oracle.com/community/java
4
Part 1
INTRODUCTION
Notion d’objet
5
Notion d’objet
Notion de classe
6
Exemples d’objets
Exemple 1: Personne
7
Modèle textuel des objets de type « Personne »
8
Exemple 2: Point du plan cartésien
9
Modèle graphique des objets de type « Point»
10
Modèle textuel des objets de type « Sphère »
11
Instance
12
Apparence de « différents objets » de type Sphère
13
Exercice
14
Caractéristiques essentielles de la POO
▪ Tout est objet ! : chaque objet encapsule des attributs et des méthodes
agissant sur ces données.
▪ Le concept de classe généralise la notion de type. Entre classe et objet il y
a, en quelque sorte, le même rapport qu'entre type et variable.
▪ Instancier une classe consiste à créer un objet sur son modèle avec ses
données propres (cela se fait via le constructeur).
▪ L'encapsulation réalise une abstraction des données : vu de l'extérieur de
l'objet, les détails d'implémentation sont cachés.
▪ Des classes peuvent hériter d'autres classes (classe mère -classes filles).
La notion d'héritage permet d'établir une hiérarchie entre les classes.
▪ Avec l'héritage, il devient possible de redéfinir des méthodes au sein des
classes filles. On parle de polymorphisme.
15
POO avec Java
16
Origine du langage JAVA
Historique de java
Source: https://en.wikipedia.org/wiki/Java_version_history
17
JAVA aujourd’hui
Source: http://www.tiobe.com
Prof. Asmaa El Hannani ISIC-S1 36
JAVA aujourd’hui
Source: http://www.tiobe.com
Prof. Asmaa El Hannani ISIC-S1 37
18
Java comme Plateforme
JAVA Program
19
Java est simple
20
Java est robuste
21
Java est sûr
22
Java est multitâche
Mémoire Mémoire
P1 P2 T1 Synchronisation T2
Inter-process
Prof. Asmaa El Hannani ISIC-S1 46
23
Java et son environnement d'exécution
Source : https://www.oracle.com/technetwork/java/javase/tech
Plateformes d'exécution
24
Applications Java
◼ Avec différentes éditions, les types d'applications qui peuvent
être développées en Java sont nombreux et variés :
❑ Applications desktop
❑ Applications web
❑ Applications pour appareil mobile
❑ Applications pour carte à puce
❑ Applications temps réel
❑ La platforme Android (Google phone OS) se base sur Java
pour les user apps.
25
Déploiement d’un programme en C
MyProgram.c
MyProgram.class
26
Première application JAVA
27
Premier programme en Java
28
Compilation et interprétation (2/2)
Exemple d’Eclipse
29
Structure de la classe PremierProg
◼ class : indique que tout programme Java réside dans une classe. Le contenu
de celle-ci est délimité par des accolades, {}.
◼ public static void main : doit toujours être la signature de la méthode principale
de votre programme pour que la machine virtuelle puisse l'exécuter.
◼ static : indique que la méthode main n'est pas liée à une instance (objet)
particulière de la classe. Par analogie, c'est l‘équivalent d'une procédure ou d'une
fonction usuelles dans C.
◼ String[] args : tableau de chaînes de caractères, qui sont les arguments passés à
votre programme. Le nom du paramètre args est arbitraire, mais conventionnel.
Prof. Asmaa El Hannani ISIC-S1 61
30
Structure de la classe PremierProg
◼ Tous les programmes Java sont composés d'au moins une classe
◼ Une méthode main() qui est le point de départ du programme.
◼ Une méthode est une suite d'instructions à exécuter. Une méthode contient :
❑ une entête : celle-ci va être un peu comme la carte d'identité de la
méthode.
❑ un corps : le contenu de la méthode. Ce qui va être fait ! Délimité par
des accolades {}.
❑ une valeur de retour : le résultat que la méthode va retourner. SAUF
pour les méthodes de type void qui ne renvoient rien.
31
N’oublions pas !
32