0% ont trouvé ce document utile (0 vote)
60 vues28 pages

Java Cours

Ce document introduit les concepts de base de la programmation orientée objet en Java. Il définit ce qu'est la POO et Java, et présente les premiers éléments de syntaxe comme les classes, méthodes, variables et structures de contrôle.

Transféré par

bouchakyahya0
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)
60 vues28 pages

Java Cours

Ce document introduit les concepts de base de la programmation orientée objet en Java. Il définit ce qu'est la POO et Java, et présente les premiers éléments de syntaxe comme les classes, méthodes, variables et structures de contrôle.

Transféré par

bouchakyahya0
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/ 28

Niveau : DSI 2ème année Module : Programmation O.

Cours N° 1
Programmation Orientée
Objet

Mr. : E. BAKKI A. S : 2015/2016


Qu’est ce que POO?

• La POO est une méthode d’implémentation dans laquelle les


programmes sont organisés sous formes de collections coopératives
d’objets, dont chacun représente une instance d’une classe quelconque
et dont toutes les classes sont membres d’une hiérarchie de classes unis
à travers des relations d’héritage.

• Un objet est une entité logicielle :

o Ayant une identité

o Capable de sauvegarder un état c'est-à-dire un ensemble


d’information dans des variables internes.

o Répondant à des messages précis en déclenchant des activations


internes appropriés qui changent l’état de l’objet. Ces opération sont
appelées méthodes. Ce sont des fonctions liées à des objets et qui
précisent le comportement de ces objets.

– Objet = Données + Méthodes


Qu’est ce que java?

• Langage de programmation orienté objet

• Java a été conçu par James Gosling en 1994. L’idée était d’avoir un
langage de développement simple, portable, orienté objet, interprété.
Java reprend la syntaxe de C++ en le simplifiant.

• Java est utilisé pour créer des programmes et des Applets

• Java comprend bien d’autres aspects (programmation graphique,


applets, programmation réseau, multi-tâches)

• Java offre aussi un ensemble de classes pour développer des


applications de types très variés (réseau, interface graphique, multi-
tâches, etc.)
Premier programme java

// Mon premier programme en Java


class PremierProgramme {
public static void main(String[] argv) {
System.out.println("Bonjour !");
} // fin de main, commentaire sur une ligne
} // fin de la définition de la classe

Ainsi, la sortie de ce premier programme Java est :


Bonjour !

Remarque:

• Le nom du fichier java doit être le même que celui de la classe qui
contient la fonction principale main.
Premier programme java

• // Pour écrire des commentaires dans un programme .


•class PremierProgramme est la déclaration d’une classe (obligatoire en Java).
• public signifie que main est visible de l’extérieure de la classe machin.
• static signifie que main n’est pas associée a une instance mais à une classe…
• main est le nom de la méthode…
• argv est le tableau de chaînes de caractères habituels du C.
• String est le nom de la classe chaîne de caractères
• System est le nom de la classe système
• out est le nom de l’instance pour effectuer des sorties
• println est le nom de la méthode qui imprime une ligne avec un saut de ligne.
Les primitives

Java dispose des primitives suivantes :

Primitive Étendue Taille

char 0 à 65 535 16 bits


Byte -128 à +127 8 bits
Short -32 768 à +32 767 16 bits
int - 2 147 483 648 à + 2 147 483 647 32 bits
long de - 9 223 372 036 854 775 808 à + 9 223 372 036 854 775 807 64 bits
float de ± 1.4E-45 à ± 3.40282347E38 32 bits
double de ± 4.9E-324 à ± 1.7976931348623157E308 64 bits
boolean true ou false 1 bit
void - 0 bit
Utilisation des primitives

•Les primitives sont utilisées de façon très simple. Elles doivent être déclarées,
tout comme les handles d'objets, avec une syntaxe similaire, par exemple :

• int i;
• char c;
• double valeurFlottanteEnDoublePrécision;
• boolean fini;

• les primitives peuvent être initialisées en même temps que la déclaration:

– int i = 12;
– char c = ‘a’;
– double valeurFlottanteEnDoublePrécision = 23456.3456;
– boolean fini = true;
Primitives

• Valeurs par défaut des primitives:

Toutes les primitives de type numérique utilisées comme membres d'un


objet sont initialisées à la valeur 0. Le type boolean est initialisé à la
valeur false.

• Le casting des primitives


Le casting (mot anglais qui signifie moulage), également appelé cast ou,
parfois, transtypage, consiste à effectuer une conversion d'un type vers un
autre type.
Le casting peut être effectué dans deux conditions différentes :

· Vers un type plus général. On parle alors de sur-casting ou de sur-typage.


· Vers un type plus particulier. On parle alors de sous-casting ou de sous-
typage.
Primitives

• Casting implicite: on peut faire un sur-casting d ’une manière implicite:


– Exemples :
• int a=6; // le type int est codé sur 32 bits
• long b; // le type long est codé sur 64 bits
– Casting implicite :
b=a;

• Casting explicit :
Un casting explicite peut être effectué simplement en faisant précéder
la valeur par l'indication du nouveau type entre parenthèses, par exemple :
o float a = 5.5;
o double c = (double)a;
o int d = 8;
o long f = (long)d;
Opérateurs

• Opérateur d ’affectation:

• x=3;
• x=y=z=w+5;
• pour la comparaison if (x = = 5 )

• Les opérateurs arithmétiques à deux opérandes

Les opérateurs arithmétiques à deux opérandes sont les suivants :

• + addition
• - soustraction
• * multiplication
• / division
• % modulo (reste de la division)
Opérateurs

• Les opérateurs arithmétiques à deux opérandes

• exemples :

x = x + 4; ou x+=4;
z = z * y; ou Z*=y;
v = v % w; ou v%=w;

• Les opérateurs relationnels:

• == équivalent
• < plus petit que
• > plus grand que
• <= plus petit ou égal
• >= plus grand ou égal
• != non équivalent
Opérateurs

• Les opérateurs logiques:

– && Et (deux opérandes)


– || Ou (deux opérandes )
– ! Non (un seul opérande)

• L'opérateur à trois opérandes ?:

– condition ? expression_si_vrai : expression_si_faux


exemple :
x = y < 5 ? 4 * y : 2 * y;
Equivalent à :
if (y < 5) x = 4 * y;
else x = 2 * y;
Structures de contrôle

• L'instruction conditionnelle if
La syntaxe de l'instruction if peut être décrite de la façon suivante:
if (expression) instruction;
ou :
if (expression) {
instruction1; instruction2;
}
• L'instruction conditionnelle else
if (expression) {
instruction1;
}
else {
instruction2;
}
Structures de contrôle

• Les instructions conditionnelles imbriquées

Java permet d'écrire ce type de structure sous la forme :

if (expression1) {
bloc1;
}
else if (expression2) {
bloc2;
}
else if (expression3) {
bloc3;
}
else {
bloc5;
}
Structures de contrôle

• L'instruction switch

la syntaxe est la suivante :

switch( variable) {
case valeur1: instructions1;break;
case valeur2: instructions2;break;
case valeur3: instructions2;break;
.
.
case valeurN: instructionsN;break;
default: instructions;break;
}
Structures de contrôle

• La boucle for

La boucle for est une structure employée pour exécuter un bloc


d'instructions un nombre de fois en principe connu à l'avance. Elle utilise
la syntaxe suivante :

for (initialisation;test;incrémentation) {
instructions;
}
Exemple :

for (int i = 2; i < 10;i++) {


System.out.println("Vive Java !");
}
Structures de contrôle

• L ’instruction While Exemple :


int s=0,i=O;
while (condition){ while (i<10){
BlocInstructions; s+=i;
} i++;
}

Exemple :
• L ’instruction do .. while
int s=0,i=O;
do{
do{
s+=i;
BlocInstructions;
i++;
}
}
while (condition);
while (i<10);
Les variables

• Java permet de déclarer des variables n’importe où et de les initialiser :


• L’emplacement des déclarations est libre en Java; le programmeur
n’est pas obligé de les mettre au début d’une fonction. Par contre, on
ne peut utiliser la variable déclarée que dans les instructions du bloc où
est effectuée la déclaration.

• L’avantage de cette spécificité du Java est de pouvoir déclarer une


variable juste au moment où l’on en a besoin et cela clarifie le
programme.

• On peut déclarer une variable de boucle directement dans l'instruction


for. Ceci permet de n'utiliser cette variable que dans le bloc de la
boucle.
Les Constantes

Vous pouvez déclarer une variable en tant que final pour qu’elle demeure
inchangée dans tout le programme, c’est l’équivalent des constantes en C
et C++.

final int aFinalVar = 0;

Une fois une variable final à été initialisée, elle ne peut être changé.
chaque tentative de lui affecter une valeur va conduire à une erreur de
compilation.
Les tableaux

• Les tableaux permettent de stocker plusieurs valeurs de même type


dans une variable.
 Les valeurs contenues dans la variable sont repérées par un indice
 En langage java, les tableaux sont des objets
• Déclaration
int tab [ ];
String chaines[ ];
• Création d'un tableau
tab = new int [20]; // tableau de 20 int
chaines = new String [100]; // tableau de 100 chaine
Les tableaux

• Le nombre d'éléments du tableau est mémorisé. Java peut ainsi


détecter à l'exécution le dépassement d'indice et générer une exception.

• Nombre d’éléments du tableau

 Il est récupérable par nomTableau.length

int taille = tab.length; //taille vaut 20

• Comme en C/C++, les indices d’un tableau commencent à ‘ 0 ’. Donc


un tableau de taille 100 aura ses indices qui iront de 0 à 99.
Les tableaux

• Initialisation

tab[0]=1;

tab[1]=2;

...

noms[0] = new String( " Adam");

noms[1] = new String( "Lina");

• Création et initialisation simultanées

String noms [ ] = {" Adam ","Lina"};

Point pts[ ] = { new Point (0, 0), new Point (10, -1)};
Les tableaux

public class Tab1


{
public static void main (String args[])
{
int tab[ ] ; Pour déclarer une variable tableau
tab = new int[4]; on indique le type des éléments du
tab[0]=5; tableau et le nom de la variable
tab[1]=3; tableau suivi de [ ]
tab[2]=7;
tab[3]=tab[0]+tab[1]; on utilise new type [taille];
} pour initialiser le tableau
}
On peut ensuite affecter des
valeurs au différentes cases du
Les indices vont tableau : nom_tableau[indice]
toujours de 0 à (taille-1)
Les tableaux

Afficher le contenu du tableau.


public class Tab2
{
public static void main (String args[])
{
String tab[ ] ;
tab = new String[4];
tab[0]=new String("Said");
tab[1]=new String("fatima");
tab[2]=new String("Nizar");
tab[3]=new String("Dihya");
for (int i=0;i<tab.length;i++)
{
System.out.println("Prénom Numero : "
+ i + tab[i]);
}}
}
La classe String

 Attention ce n’est pas un type de base.

– String s="aaa"; // s contient la chaîne "aaa"


– String s=new String("aaa"); // identique à la ligne précédente

 La concaténation

 l’opérateur + entre 2 String les concatène :


String str1 = "Bonjour ! ";
String str2 = "Comment vas-tu ?";
String str3 = str1 + str2;

// Concaténation de chaînes :
// str3 contient " Bonjour ! Comment vas-tu ?"
La classe String

 Longueur d’un objet String :


 méthode int length() : renvoie la longueur de la chaîne

String str1 = "bonjour";


int n = str1.length(); // n vaut 7

 Sous-chaînes

 méthode String substring(int debut, int fin) : extraction de la sous-


chaine depuis la position debut jusqu’à la position fin non-comprise.
String str2 = str1.substring(0,3); // str2 contient la valeur "bon"

 le premier caractère d’une chaîne occupe la position 0


 le deuxième paramètre de substring indique la position du premier
caractère que l ’on ne souhaite pas copier
La classe String

 Les chaînes de caractères sont des objets :


 pour tester si 2 chaînes sont égales il faut utiliser la méthode
boolean equals(String str) et non ==
 pour tester si 2 chaînes sont égales à la casse près il faut utiliser la
méthode
boolean equalsIgnoreCase(String str)

String str1 = "BonJour";


String str2 = "bonjour"; String str3 = "bonjour";
boolean a, b, c;
a = str1.equals("BonJour"); //a contient la valeur true
b = str3.equalsIgnoreCase(str2);//b contient la valeur true
c = "bonjour".equals(str2); //ccontient la valeur true
La classe String

 Quelques autres méthodes utiles

 boolean startsWith(String str) : pour tester si une chaine de caractère


commence par la chaine de caractère str

 boolean endsWith(String str) : pour tester si une chaîne de caractère se


termine par la chaine de caractère str

String str1 = "bonjour ";


boolean a = str1.startsWith("bon");//a vaut true
boolean b = str1.endsWith("jour");//b vaut true
 Récupération d’un caractère dans une chaîne

 méthode char charAt(int pos) : renvoie le caractère situé à la position


pos dans la chaîne de caractère à laquelle on envoie se message
String str1 = "bonjour";
char unJ = str1.charAt(3); // unJ contient le caractère 'j'

Vous aimerez peut-être aussi