0% ont trouvé ce document utile (0 vote)
61 vues36 pages

Chapitre1 PresentationJava

Transféré par

LOU
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
61 vues36 pages

Chapitre1 PresentationJava

Transféré par

LOU
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
Vous êtes sur la page 1/ 36

INSTITUT SUPÉRIEUR DES ETUDES TECHNOLOGIQUES DE DJERBA

DÉPARTEMENT : TECHNOLOGIES DE L’INFORMATIQUE

Atelier Java

A. ASSES

[email protected]

Public cible : Classes de 2ème année Licence Appliquée TI


Plan du module

Généralités et notions de base


Les instructions de base en Java
Les classes et les objets
L’héritage et le polymorphisme
Les collections
La gestion des exceptions
La généricité
Manipulation d’une base de données en Java
: l’API JDBC

Atelier Java (par A. ASSES) Page 2


Chapitre 1 :
Généralités et notions de base
Plan
Présentation générale du langage Java
Introduction
Historique
Caractéristiques générales
Mode de fonctionnement
Environnement de travail
Compilation et exécution
Les paquetages
Syntaxe du langage Java
Les instructions Java
Les commentaires
Les règles de nommage
Point d’entrée d’un programme Java

Atelier Java (par A. ASSES) Page 4


Présentation générale du Java

Introduction :
Diversité de Langages de programmation
Classification des langages de
programmation :
•Procéduraux : Pascal, C, …
•Objets : SmallTalk, Java, …
•Fonctionnels : Lisp, Scheme, …
•Logiques : Prolog, CLP, …

Atelier Java (par A. ASSES) Page 5


Présentation générale du Java

Langage orienté objet développé en


décembre 1990 par une équipe de Sun
Microsystems dirigée par James Gosling

Plate-forme qui fait fonctionner plusieurs


applications et sites Web dans de nombreux
domaines : logiciels embarqués, jeux, téléphones
mobiles, services bancaires, …

97% des bureaux d’entreprise et plus de 9 millions


de développeurs dans le monde utilisent java
Atelier Java (par A. ASSES) Page 6
Présentation générale du Java

Historique :
o 1990 : Ecriture d'un nouveau langage, appelé OAK plus adapté à la réalisation
de logiciels embarqués, petit, fiable et indépendant de l'architecture.
o 1993 : Réadaptation du langage OAK à Internet.
o 1994 : Diffusion du premier navigateur par Sun, appelé HotJava permettant
d’exécuter des applets Java.
o 1995 : Apparition de la version Alpha de Java (nom de la machine à café autour
de laquelle se réunissait James Gosling et ses collaborateurs) pour remplacer
OAK.
o 1996 : Intégration des composants par les navigateurs Netscape et Microsoft
supportant Java et permettant d’exécuter les applets.
o 2007 : Publication de l’ensemble des outils Java dans un « package » OpenJDK
sous licence libre.
o 2009 : Acquisition de l’entreprise Sun Microsystems par la société Oracle.

Atelier Java (par A. ASSES) Page 7


Présentation générale du Java

Historique :
De nombreuses versions de Java depuis 1995

Atelier Java (par A. ASSES) Page 8


Présentation générale du Java
Caractéristiques générales :
fortement typé
Les types sont fournis par le langage mais aussi par la définition
des classes.
Vérification de la compatibilité des variables déclarées avec leurs
types.
interprété
La compilation d'un programme Java crée du pseudo-code portable
connu sous le nom du "byte-code".
La VM peut interpréter le byte-code pour qu’il soit exécuté.
portable
Indépendant de toute architecture, le byte-code peut être exécuté
sur n’importe quelle plateforme implémentant une machine
virtuelle Java (Linux, Windows, MacOs).
″Ecrivez une fois, Exécutez partout″.

Atelier Java (par A. ASSES) Page 9


Présentation générale du Java

Fiable
Débogage aisé avec un faible risque d’erreurs (pas de pointeurs,
gestion automatique de la mémoire grâce au ″garbage collector″
qui collecte les zones mémoires libres après destruction des
objets,…).
Gestion des exceptions pour conforter la sécurité du code source.
Puissant
Richesse des APIs Java (bibliothèques, paquetages et librairies
fournissant de nombreuses classes utilitaires) mises à la
disposition des développeurs pour faciliter le codage et accroitre
leur productivité.
Multitâches
Fonctionnement sur des machines multiprocesseurs.
Utilisation des threads exécutant d’une manière isolée des tâches
différentes.

Atelier Java (par A. ASSES) Page 10


Présentation générale du Java
Défaillances
Nécessite l’installation d’un interpréteur pour pouvoir
exécuter un programme Java

Gourmand en mémoire

Certaine lenteur au niveau de l’exécution par rapport à


un programme natif

Problèmes de compatibilité avec les premières


versions et certains navigateurs qui ne sont pas
développés par Sun.

Atelier Java (par A. ASSES) Page 11


Mode de fonctionnement

Environnement de travail :
Le JDK (Java Development Kit) est le kit de
développement Java fourni par Sun qui contient :
• les classes et les APIs de base de Java,
• le compilateur
• le JRE (Java RunTime Environment) incluant la machine
virtuelle de Java (JVM : Java Virtual Machine) et des
utilitaires logiciels permettant d’exécuter les programmes
sur différentes machines
• le débogueur
• l’outil pour exécuter les applets
• le générateur de la documentation
• etc.

Atelier Java (par A. ASSES) Page 12


Mode de fonctionnement

Environnement de travail :
Plusieurs éditions et versions de JDK dont les
principales sont :
• Java SE (Standard Edition) : pour les
applications classiques, desktop
• Java EE (Enterprise Edition) : pour les
applications serveur, Servlet/JSP/JSTL,
JDO/EJB, JavaMail, Web services, etc.
• Java ME (Micro Edition) : pour les applications
embarquées, PDA, téléphones, etc.
Pour connaître la version du JDK installée sur un
poste, on peut taper : java –version
Atelier Java (par A. ASSES) Page 13
Mode de fonctionnement

Environnement de travail :
Plusieurs éditeurs permettant d’écrire et faire exécuter des
programmes Java :
SUN
• Jdk
• JavaWorkShop
BORLAND
• Jbuilder
MICROSOFT
• Visual J++
IBM
• Visual Age
Eclipse

Atelier Java (par A. ASSES) Page 14


Mode de fonctionnement

Compilation et exécution:
La compilation se fait à l’aide de la commande
javac.
Ex : javac exemple.java
• Compilation en code intermédiaire appelé bytecode java
(langage machine correspondant à la machine virtuelle)
• Détection des erreurs de sémantique et de syntaxe
• Génération du fichier exemple.class si pas d’erreurs
L’exécution du bytecode se fait par l’intermédiaire
de la machine virtuelle Java via la commande
java.
Ex : java exemple
Atelier Java (par A. ASSES) Page 15
Mode de fonctionnement

Compilation et exécution:

Atelier Java (par A. ASSES) Page 16


Mode de fonctionnement

Les paquetages :
API (Application Programming Interface) Java :
librairies de classes remplissant des fonctionnalités
très diverses
Un paquetage : groupement de classes et
d'interfaces offrant un ensemble de services selon un
thème commun (entrées/sorties, utilitaires
mathématiques, outils réseau, composants
graphiques, ...)
L’attribution d’une classe à un paquetage se fait au
niveau de début du fichier source auquel elle
appartient comme suit : package nomPackage ;

Atelier Java (par A. ASSES) Page 17


Mode de fonctionnement
Les paquetages :
Java fournit de nombreux paquetages prédéfinis remplissant
plusieurs services et fonctionnalités diverses
• java.lang : paquetage standard ou support du langage
(String, Object, Math, …)
• java.io : entrées / sorties
• java.awt : interfaces graphiques, images et dessins
• java.applet : les applets sur le web
• java.util : structures de données classiques
• java.net : sockets, URL
• java.sql : fournit le package JDBC
• javax.swing : composants « légers » pour la création
d’interfaces graphiques
• …

Atelier Java (par A. ASSES) Page 18


Mode de fonctionnement

Les paquetages :
Pour qu’on puisse accéder aux classes des autres
paquetages, on devrait les importer en utilisant
l’instruction import conformément à la syntaxe
suivante :

import nomPackage.*; // importer toutes les classes du


package

import nomPackage.UneClasse; // importer une classe bien


déterminée du package

Atelier Java (par A. ASSES) Page 19


La syntaxe Java

Les instructions Java :


En Java tout est considéré objet. Un programme en Java se
définit par une ou plusieurs classes.

Chaque classe, composée d’un ensemble d’attributs et de


méthodes, doit porter le même nom que le fichier dans
laquelle elle se trouve : une classe par fichier.
• Exemple : Si nous disposons de la classe ExempleDeClasse, elle doit
être définie dans le fichier ExempleDeClasse.java.
Toutes les méthodes définies proviennent obligatoirement
d’une classe :
• soit d’une classe créée par le développeur soit par l’API Java,
• soit par une classe fournie par une libraire créée par d’autres
développeurs.

Atelier Java (par A. ASSES) Page 20


La syntaxe Java

Les instructions Java :


La définition d’une classe ou d’une méthode se
fait dans un bloc permettant de définir un
regroupement d’instructions délimités par des
accolades :
{ pour le début de bloc
} pour la fin du bloc.
Les instructions Java, semblablement au langage
C se terminent toujours par un point-virgule ″;″.
Java est sensible à la casse : les minuscules et les
majuscules sont des caractères différents.

Atelier Java (par A. ASSES) Page 21


La syntaxe Java

Les commentaires :
Il y a deux façons pour écrire les commentaires :

Les commentaires pour un ensemble de lignes


délimités par /* au début et */ à la fin :
/* Commentaires entre ces 2 marques,
Éventuellement sur plusieurs lignes */

Les commentaires de fin de ligne (de // jusqu’à la


fin de la ligne) :
String msg="commentaire"; //Commentaire jusqu’à la fin de la ligne

Atelier Java (par A. ASSES) Page 22


La syntaxe Java

Les règles de nommage:


Un identificateur : suite de caractères servant à
nommer les différentes entités traitées dans un
programme : les variables, les constantes, les
classes, les objets, les méthodes, …
En Java, un identificateur est composé de chiffres
et de lettres. Il doit commencer obligatoirement
par une lettre, le caractère souligné ″_″ ou le
caractère ″$″.
Des règles d’écriture sont conventionnellement
utilisées sans qu’elles soient imposées par le
langage.
Atelier Java (par A. ASSES) Page 23
La syntaxe Java
Les règles de nommage:
S’il s’agit d’un seul mot, les noms des variables, des
attributs et des méthodes sont écrits en minuscule.
• Ex : variable1, x, nom, somme().
Si plusieurs mots sont accolés, la première lettre est
minuscule et l’initiale de chacun des autres mots est
majuscule.
• Ex : uneVariable, nomPrenom, setLongueur(), getNom().
La première lettre est majuscule pour les classes et les
interfaces.
• Ex : MaClasse, UneFenetre, MonInterface.
Les constantes sont entièrement écrites en
majuscules.
• Ex : LONGUEUR_MAX
Atelier Java (par A. ASSES) Page 24
La syntaxe Java

Point d’entrée d’un programme Java:


Toute classe devrait contenir une méthode
particulière pour pouvoir s’exécuter.

Les instructions commencent à s’exécuter par


défaut à partir de la méthode principale main()

public static void main(String[] args)


{
………..
}
Atelier Java (par A. ASSES) Page 25
La syntaxe Java

Exemple:
1. public class Exemple // Nom de la classe
2. {
3. public static void main(String[] args) // La méthode principale
4. {
5. // afficher un message sur l’écran // Un commentaire
6. System.out.println("Ceci est un exemple !"); // Une instruction
7. }
8. }

L’écriture sur la sortie standard (l’écran par défaut) se fait par


appel de la méthode println() de l’objet out de la classe
System

Atelier Java (par A. ASSES) Page 26


Questions à Choix Multiples
Questions à choix multiples

Q1: Java est un langage


A. Interprété
B. Compilé
C. Procédural
D. Ni interprété ni compilé

Q2: L’interprétation d’un programme Java est


effectuée par
A. JDK
B. API
C. JVM
D. java.util

Atelier Java (par A. ASSES) Page 28


Questions à choix multiples

Q3 : Laquelle des lignes suivantes peut être insérée à la ligne 1 pour


pouvoir exécuter le programme?

PrintWriter et OutputStreamWriter sont des classes du package java.io.


A. import java.lang.*;
B. import java.io.*;
C. import java.io.OutputStreamWriter;
D. include java.io.*;
E. include java.lang.System;
Atelier Java (par A. ASSES) Page 29
Questions à choix multiples

Q4 : Quelle affirmation est vraie?

A. Problème de compilation
B. Le programme lève une exception NullPointerException lorsqu'il
est exécuté avec zéro argument.
C. Le programme affichera "no arguments" et "1 arguments" lorsqu'il
sera appelé avec zéro et un argument.
D. Le programme affichera "no arguments" et "2 arguments" lorsqu'il
sera appelé avec des arguments zéro et un.

Atelier Java (par A. ASSES) Page 30


Questions à choix multiples
Q5 : Lequel des mots-clés suivants peut apparaître plusieurs
fois dans un fichier source Java?
A. import
B. class
C. private
D. package
E. Public

Q6 : Quelle(s) déclaration(s) valide(s) pour la fonction


standard main ?
A. static void main(String args[ ]) { }
B. public static int main(String args[ ]) {}
C. public static void main (String args) { }
D. final static public void main (String[ ] arguments ) { }
E. public static void main (String[ ] args) { }

Atelier Java (par A. ASSES) Page 31


Questions à choix multiples

Q7 : Quelles instructions doivent être ajoutées à la classe ?

A. import com.enthu.*;
B. import com.*.*;
C. import *.*.*;
D. import com.*;
E. import com.enthu.rad.*;

Atelier Java (par A. ASSES) Page 32


Questions à choix multiples

Q8 : Quelle(s) ligne(s) génère(nt) une erreur de compilation ?

A. 1
B. 2
C. 3
D. 4
E. 5
F. 6

Atelier Java (par A. ASSES) Page 33


Questions à choix multiples

Q9 : Lesquels des éléments suivants ne peuvent pas être des


identificateurs Java ?

A. goto
B. Unsigned
C. String
D. _xyz
E. $_abc
F. iLikeVeryVeryVeryVeryVeryLongIdentifiersThatDontMakeA
nySenseAtAll (65 characters)
G. Import
H. 2Next

Atelier Java (par A. ASSES) Page 34


Questions à choix multiples

Q10 : Que doit-on ajouter à la ligne 1 pour que le code compile


sans erreurs ?

A. import static java.lang.Integer.*;


B. static import java.lang.System.out;
C. static import Integer.MAX_VALUE;
D. import static java.lang.System.*;
E. static import java.lang.System.*;

Atelier Java (par A. ASSES) Page 35


Merci pour votre attention ☺

Vous aimerez peut-être aussi