0% ont trouvé ce document utile (0 vote)
121 vues

Cours Introduction Java

Transféré par

Mina Mint Chighali
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 PPTX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
121 vues

Cours Introduction Java

Transféré par

Mina Mint Chighali
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 PPTX, PDF, TXT ou lisez en ligne sur Scribd
Vous êtes sur la page 1/ 40

Conception par Objet et Programmation Java

Introduction Java

Année universitaire 2012-2013 Equipe JAVA


Plan

Introduction
Classe et objet
Encapsulation
Héritage
Polymorphisme
Exceptions
Interface et Collection
Design Pattern +Connexion Base de donnée
Références

•Head First Java, Second Editition

•http://docs.oracle.com/javase/tutorial/
Objectifs

Comprendre le paradigme OO et utiliser Java pour le


mettre en œuvre
Notion de classe et d’objet
Décrire les éléments-clé de la plate-forme Java
Compiler et exécuter une application Java
Décrire le syntaxe du langage
Comprendre et utiliser les API de java

4
Introduction Java
Aperçu : Orienté Objet

La programmation orientée objet se base sur une


approche de
conception et de développement de logiciels

 Représenter les éléments du monde réel par des entités


informatiques appelés "objets" en adoptant un haut niveau
d'abstraction.

5
Introduction Java
Aperçu : Orienté Objet

Approche procédurale :
"Que doit faire mon programme ?  "  

 Approche orientée-objet :
"De quoi doit être composé mon programme ?"
6
Introduction Java
Aperçu : Orienté Objet
Des objets similaires peuvent être informatiquement décrits par
une même abstraction : une classe
 même structure de données et méthodes de traitement
 valeurs différentes pour chaque objet

7
Introduction Java
C++ vs Java

• Pas de structures ni d’unions


• Pas de typedef
• Pas de variables ni de fonctions en dehors des classes
• Pas de fonctions à nombre variable d’arguments
• Pas d'héritage multiple de classes
• Pas de surcharge d’opérateurs
• Pas de passage par copie pour les objets
• Pas de pointeurs, seulement des références

8
Introduction Java
JAVA: La plateforme
Présentation

Java est un langage de programmation moderne développé


par Sun Microsystems(aujourd'hui racheté par Oracle)

Une des plus grandes forces est son excellente portabilité : un


programme java peut s’executer sous Windows, Mac, Linux,
etc….

Avec le langage Java on peut avoir:


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, avec J2ME
et bien d'autres J2EE, JMF, J3D pour la 3D...
10
Introduction Java
Programme JAVA (1)

Un programme Java est compilé et interprété

-le code source est, directement,


Compilé interprété sans phase de compilation,
et c'est l'interprète qui exécute ce
code source, qu'il interprète à la volée.
(JVM)

-le code source est soumis à un


compilateur, pour en faire un fichier
binaire compréhensible par un
microprocesseur (une sorte de pré- Interprété
fichier .exe)

11
Introduction JAVA
Programme JAVA (2)

12
Introduction JAVA
JAVA: la Plateforme
Plateforme = environnement hardware ou software sur lequel le
programme est exécuté.
La Java « Platform » se compose de:
Java Virtual Machine (Java VM)
Java Application Programming Interface (Java API)

13
Introduction Java
JVM

Une machine virtuelle est un ordinateur fictif s’exécutant


sur un ordinateur réel :

Possède un langage natif propre et traduit un


programme écrit dans ce langage vers le langage natif de
l’ordinateur.

Définit les spécifications hardware de la plateforme

Lit le bytecode compilé (indépendant de la plateforme)

14
Introduction Java
API: Java Application Programming Interface

API :
L’API Java est structuré en libraires (packages).
Les packages comprennent des ensembles fonctionnels de composants
(classes)..
Le noyau (core) de l’API Java (inclus dans toute implémentation complète de
la plateforme Java) comprend notamment :

Essentials (data types, objects, string, array, vector, I/O,date,…)


Applet
Abstract Windowing Toolkit (AWT)
Basic Networking (URL, Socket –TCP or UDP-,IP)
Evolved Networking (Remote Method Invocation)
Internationalization
Security
…..
15
Introduction Java
JAVA: Les versions
JAVA: Les versions (1)

Année Evénements

Mai 1995 JDK 1.0

Mars 1997 JDK 1.1

Septembre 2004 J2SE 5.0 (1.5)

Décembre 2006 Java SE 6.0 (1.6)

Janvier 2010 Rachat de Sun par Oracle

Juillet 2011 Java SE 7

17
Introduction Java
JAVA: Les versions (2)
Java 5 Vs. Java 6

JAVA 5

Enhanced for loop(for each for loop)

Enumeration( enum keyword)

AutoBoxing/Unboxing ( like wrapper classes)

Generics (Set(<String>))

Annotations

18
JAVA: Notions, mots clé…
Notions fondamentales

- Classe / Objet / Instance

- Attributs / Méthodes

- Encapsulation

- Héritage

- Polymorphisme

20
JAVA: Classe

- les briques de constructions d’un programme JAVA sont les


classes,
LES ATTRIBUTS :
Partie statique les données (Propriétés) Les attributs représentent la
description des données
propres à chaque classe
d'objets

le code les manipulant LES METHODES :


Partie dynamique Les méthodes représentent
(Méthodes)
l'ensemble des actions,
procédures, fonctions ou
opérations que l'on
peut associer à une classe
Classe
21
Les Identificateurs

• Nommer les classes, les variables, les méthodes, ...


• Un identificateur Java
est de longueur quelconque
commence par une lettre Unicode
peut ensuite contenir des lettres ou des chiffres ou le caractère
souligné«_ »
ne doit pas être un mot réservé du langage (mot clé) (if, for,
true, … )

• les caractères suivants sont autorisés pour construire un


identificateur Java : "$" , "_" , "μ" et les lettres accentuées.

[a..z, A..Z, $, _, μ ]{a..z, A..Z, $, _, μ, 0..9,


Unicode}
22
Mots clés Java
Abstract boolean break byte
case catch char class
continue default do double
else extends final, finally
float for if implements
import instanceof, int interface
long native new null
package private protected public
return short static super
switch synchronized this throw
throws transient try
void volatile while

23
Les règles de Nommage
Classe :
1ère lettre en majuscule
Mélange de minuscule, majuscule avec la première lettre de chaque mot
en majuscule
Donner des noms simples et descriptifs

Packages
Tout en minuscule.
Utiliser seulement [a-z], [0-9] et le point '.': Ne pas utiliser de tiret '-',
d'underscore '_', d'espace, ou d'autres caractères ($, *, accents, ...).

Constante:
• Les constantes sont en majuscules et les mots sont séparés par
le caractère souligné« _ »: UNE_CONSTANTE

24
Types de données en Java

• On distingue entre 2 grands groupes de types de données :


types primitifs
objets (instances de classe)

25
Types primitifs
• Valeur logique
boolean (true/false)
• Nombres entiers
byte (1 octet)
short (2octets)
int (4 octets)
long (8 octets)
• Nombres non entiers (à virgule flottante)
float (4 octets)
 double (8 octets).
• Caractère (un seul)
char (2 octets)

26
Types primitifs et valeurs

27
Les enveloppeurs (Wrappers)

•Les primitives peuvent être "enveloppées" dans un objet


provenant d'une classe prévue

• Les enveloppeurs sont des objets pouvant contenir une


primitive et auxquels sont associés des méthodes permettant
de les manipuler.

•Ces enveloppeurs héritent tous de la classe Object et


bénéficient de plusieurs méthodes utilitaires (comparaison,
valeur maximale et minimale etc.).
Les enveloppeurs (Wrappers)
Structure conditionnelle/ittératif
• Schémas conditionnels : exécuter une série d'instructions
dans le cas où une condition est vraie, et d'exécuter une autre série
d'instructions dans le cas contraire
– if (même syntaxe qu'en C/C++)
– switch-case (même syntaxe qu'en C/C++)

• Schémas itératifs : Le traitement itératif est utilisé pour


exécuter une ou plusieurs instructions plusieurs fois
– for (même syntaxe qu'en C/C++)
– while (même syntaxe qu'en C/C++)
– do-while (même syntaxe qu'en C/C++)
JAVA: Premiers pas …
Outils de développement (1)

• Pour développer un programme JAVA on utilise un IDE,

• Afin de pouvoir créer une application JAVA consistante, on a


besoin du JDK,

• Pour tester et lancer le code écrit, on doit, nécessairement,


disposer du JRE.

32
Outils de développement (2)

JRE L’environnement qui permet d'exécuter les applications java,


(Java Runtime
Environment)
Il est constitué de la JVM en particulier (Java Virtual Machine). 

JDK Outils permettant de développer, compiler (javac), débuguer (jdb)


et exécuter un programme java.
(Java
Development Kit)
Il y a aussi des outils d'archivage (jar), de génération de
documentation (javadoc).

33
Outils de développement (3)

IDE Un programme regroupant un
développement de logiciels.
ensemble d'outils pour le
(Integrated
Development
Environment) En général, un IDE regroupe un éditeur de texte, un compilateur,
des outils automatiques de fabrication, et souvent un débogueur.
(Exp: Eclipse, Netbeans)

34
Hello World (Pré-configuration)

• Installer le JDK sous Windows


– Télécharger et d'exécuter le programme  "jdk-xux-windows-
x64/32.exe" depuis le site d’Oracle (

http://www.oracle.com/technetwork/java/javase/downloads/index.html )

• Paramétrer correctement  la variable PATH


(Variables d’environnement )

35
Premier Programme (1)

36
Premier Programme (2)
• Editer le code source Java suivant et le sauver dans
Bienvenue.java :

class Bienvenue
{
public static void main( String args[])
{
System.out.println( "Bienvenue dans le monde Java ");
}
}

37
Premier Programme (3)

• Compiler avec la commande :

javac Bienvenue.java

 Remarquer que une classe « Bienvenue.class » est générée

• Exécuter en lançant la machine virtuelle java et en lui spécifiant le


point d'entrée

Java Bienvenue

38
Scanner
• C’est une classe utilisée pour «balayage» des types primitifs et
les chaines de caractères.

• Il peut être utilisé pour obtenir l'apport d'un InputStream, pour


analyser à travers une chaîne de texte ou de lire un fichier. 

• C’est une classe qui s'interface parfaitement avec des flux de


lecture pour y permettre une lecture puissante et pratique 

• Elle a fait son apparition dans le package java.util dans la


version 1.5.0 de java
Premier Programme
import java.util.Scanner;
public class Addition
{
public static void main( String args[] )
{
Scanner input = new Scanner( System.in );
int n1,n2,somme;
System.out.print(" Donner le premier entier: " );
n1 = input.nextInt();
System.out.print(" Donner un deuxième entier: " );
n2 = input.nextInt();
somme = n1 + n2;
System.out.printf( "Somme est %d\n", somme ); } }
40

Vous aimerez peut-être aussi