165
Cours Tutoriel JAVA DIABY Kalilou 23 F´ evrier 2015 DIABY Kalilou Cours Tutoriel JAVA

Tutoriel java

Embed Size (px)

Citation preview

Page 1: Tutoriel java

Cours Tutoriel JAVA

DIABY Kalilou

23 Fevrier 2015

DIABY Kalilou Cours Tutoriel JAVA

Page 2: Tutoriel java

”Le bonheur c’est lorsque nos actes sont en conformites avec nospensees ”: Gandhi

DIABY Kalilou Cours Tutoriel JAVA

Page 3: Tutoriel java

Sommaire

Dans notre seance de tutoriel nous aborderons dans un premiertemps les methodes :• Outils de la Programmation Orientee Objet.• l’heritage• le JAVABEAN• les exceptions• le design pattern• apercu des JDBC.NB : Nous aborderons pas le cote graphique de JAVA car d’unpoint de vue personnelle, je trouve qu’il existe des outils beaucoupplus puissants permettant de developper de maniere graphique etde l’appeler dans un langage de programmation tel que JAVA.

DIABY Kalilou Cours Tutoriel JAVA

Page 4: Tutoriel java

Generalites

Partie 1 : GeneralitesRappels sur le monde de JAVA

1 Historique : Source : Wikipedia

2 Recommandations

DIABY Kalilou Cours Tutoriel JAVA

Page 5: Tutoriel java

Generalites

Partie 1 : GeneralitesRappels sur le monde de JAVA

1 Historique : Source : Wikipedia

2 Recommandations

DIABY Kalilou Cours Tutoriel JAVA

Page 6: Tutoriel java

Generalites

1 Historique : Source : Wikipedia

Le langage Java est un langage de programmation informatiqueoriente objet cree par James Gosling et Patrick Naughton,employes de Sun Microsystems, avec le soutien de Bill Joy(cofondateur de Sun Microsystems en 1982), presenteofficiellement le 23 mai 1995 au SunWorld.La societe Sun a ete ensuite rachetee en 2009 par la societe Oraclequi detient et maintient desormais Java.La particularite et l’objectif central de Java est que les logicielsecrits dans ce langage doivent etre tres facilement portables surplusieurs systemes d’exploitation tels que UNIX, Windows, Mac OSou GNU/Linux, avec peu ou pas de modifications.

DIABY Kalilou Cours Tutoriel JAVA

Page 7: Tutoriel java

Generalites

Pour cela, divers plateformes et frameworks associes visent aguider, sinon garantir, cette portabilite des applicationsdeveloppees en Java. Le langage Java reprend en grande partie lasyntaxe du langage C++, tres utilisee par les informaticiens.Neanmoins, Java a ete epure des concepts les plus subtils du C++et a la fois les plus deroutants, tels que les pointeurs et references,ou l’heritage multiple contourne par l’implementation desinterfaces. Les concepteurs ont privilegie l’approche orientee objetde sorte qu’en Java, tout est objet a l’exception des types primitifs(nombres entiers, nombres a virgule flottante, etc.).Java permet de developper des applications client-serveur. Coteclient, les applets sont a l’origine de la notoriete du langage. C’estsurtout cote serveur que Java s’est impose dans le milieu del’entreprise grace aux servlets, le pendant serveur des applets, etplus recemment les JSP (JavaServer Pages) qui peuvent sesubstituer a PHP, ASP et ASP.NET.

DIABY Kalilou Cours Tutoriel JAVA

Page 8: Tutoriel java

Generalites

Java a donne naissance a un systeme d’exploitation (JavaOS), ades environnements de developpement (eclipse/JDK), desmachines virtuelles (MSJVM (en), JRE) applicativesmultiplate-forme (JVM), une declinaison pour les peripheriquesmobiles/embarques (J2ME), une bibliotheque de conceptiond’interface graphique (AWT/Swing), des applications lourdes(Jude, Oracle SQL Worksheet, etc.), des technologies web(servlets, applets) et une declinaison pour l’entreprise (J2EE). Laportabilite du bytecode Java est assuree par la machine virtuelleJava, et eventuellement par des bibliotheques standard inclusesdans un JRE. Cette machine virtuelle peut interpreter le bytecodeou le compiler a la volee en langage machine. La portabilite estdependante de la qualite de portage des JVM sur chaque OS.

DIABY Kalilou Cours Tutoriel JAVA

Page 9: Tutoriel java

Generalites

1

2 Recommandations

Salut a tous et a toutes.Ce cours se presentera sous forme de tutoriels et sera a vrai diredifferents de ceux que vous aviez l’habitude de voir.On partira d’un principe tres simple :Toujours donner le meilleur de soi meme et ne jamais au grandjamais donner son maximumCe tutoriel se presentera sous la forme de petits exemples quiseront expliques de facon simples en vue de faciliter sacomprehension.

DIABY Kalilou Cours Tutoriel JAVA

Page 10: Tutoriel java

Generalites

L’objet d’un tel document fut motive par deux facteurs que sont:

1 la demystification de certains aspects de la programmationque l’on rencontre dans bon nombre de documents deprogrammations.

2 la mise a la disposition de documents assez simple decomprehension et de lecture de tous.

3 l’elaboration et ecriture de programmes intelligents, simple etpropre.

4 l’ utilite de tel ou tel langage de programmation.

DIABY Kalilou Cours Tutoriel JAVA

Page 11: Tutoriel java

Generalites

L’objet d’un tel document fut motive par deux facteurs que sont:

1 la demystification de certains aspects de la programmationque l’on rencontre dans bon nombre de documents deprogrammations.

2 la mise a la disposition de documents assez simple decomprehension et de lecture de tous.

3 l’elaboration et ecriture de programmes intelligents, simple etpropre.

4 l’ utilite de tel ou tel langage de programmation.

DIABY Kalilou Cours Tutoriel JAVA

Page 12: Tutoriel java

Generalites

L’objet d’un tel document fut motive par deux facteurs que sont:

1 la demystification de certains aspects de la programmationque l’on rencontre dans bon nombre de documents deprogrammations.

2 la mise a la disposition de documents assez simple decomprehension et de lecture de tous.

3 l’elaboration et ecriture de programmes intelligents, simple etpropre.

4 l’ utilite de tel ou tel langage de programmation.

DIABY Kalilou Cours Tutoriel JAVA

Page 13: Tutoriel java

Generalites

L’objet d’un tel document fut motive par deux facteurs que sont:

1 la demystification de certains aspects de la programmationque l’on rencontre dans bon nombre de documents deprogrammations.

2 la mise a la disposition de documents assez simple decomprehension et de lecture de tous.

3 l’elaboration et ecriture de programmes intelligents, simple etpropre.

4 l’ utilite de tel ou tel langage de programmation.

DIABY Kalilou Cours Tutoriel JAVA

Page 14: Tutoriel java

Premiers pas

Introduction

En POO (Programmation Oriente Objet), JAVA, tout est classe etobjet. Dans notre schema, nous obeirons la norme JAVABEAN, etceux des le debut de ce tutoriel. Il nous est possible de developperde maniere traditionnelle ou d’utiliser un IDE. Nous opterons icipour l’ EDI (Environnement de Developpement Integre) ; peutimporte celui que vous utiliser : ECLIPSE, INTELLIJI,NETBEANS.Ecrivons notre premier projet JAVA ( ctrl + n ), et donnons unnom a notre projet ; dans mon cas je travaille avec JDK 7 .Une fois cela fait creons notre 1 ere classe JAVA : dika.javaAu moment de la creation de dika.java, il nous est demande derenseigner un nom de Package que nous remplirons selon laconvention du Reverse DNS pour Nom de domaine Inverse.

DIABY Kalilou Cours Tutoriel JAVA

Page 15: Tutoriel java

Premiers pas

Pour ceux qui ne le savent pas, le DNS est le nom que l’onattribue a une adresse IP(192.168.15.42) en vue de faciliter sonacces que ce soit par le client que par l’Informaticien. Cette @ IPfictive correspond a www.google.ci.A supposer que l’on developpe pour ces derniers, on pourrait entrercomme nom de package : ci.google.vuegenerale.Ou dans le cas, ou l’on aura a utiliser plusieurs packages :ci.google.vuegenerale.machine.controlVue qu’ici on aborde JAVA de facon simple, nous n’allons pas troppolemiquer sur ce que c’est le package.Ensuite creons notre classe en y ajoutant un nom a la classe.

DIABY Kalilou Cours Tutoriel JAVA

Page 16: Tutoriel java

Premiers pas

Exemple :

DIABY Kalilou Cours Tutoriel JAVA

Page 17: Tutoriel java

Premiers pas

Ajoutons un message de bienvenue dans notre console qui setrouve a cote de l’onglet problemes Pour ce faire, nous rajouteronsce bout de code :System.out.println(”Bienvenue”);ouSystem.out.print(”Bienvenue”); .On obtient donc :package com.dikait.vuegenerale;

public class dika {public static void main(String[ ] args) {System.out.println(”Bienvenue”);}}

Le System.out.print(”Bienvenue”) se contentera d’afficher le motBienvenue sans retour a la ligne. Alors que leSystem.out.println(”Bienvenue”); ferait automatiquement unretour a la ligne. Vous pouviez le tester en rajoutant d’autreschoses dans votre code.

DIABY Kalilou Cours Tutoriel JAVA

Page 18: Tutoriel java

Outils de la POO en JAVA

Les types Objets et Primitifs

1 Les types primitifs

2 Les types Objets

DIABY Kalilou Cours Tutoriel JAVA

Page 19: Tutoriel java

Outils de la POO en JAVA

Les types Objets et Primitifs

1 Les types primitifs

2 Les types Objets

DIABY Kalilou Cours Tutoriel JAVA

Page 20: Tutoriel java

Outils de la POO en JAVA

1 Les types primitifs

En POO, on emploie generalement le terme type primitif quelorsque veut fait reference a des variables de types simples c’est adire predefinie dans le langage en question.Il est d’usage de mettre la premiere lettre du nom de notreattribut( variable ) en minuscules, puis le completer ”comme nousle voulons”.En JAVA, il en existe un bon nombre. Ce qui est le cas des autreslangages de programmation orientes objets.Neanmoins certaines differences s’y glissent d’un langage a unautre.Exemple : En Java le type String est un type primitif, alors qu’enCSharp (C#) ce type est a la fois Objet et/ou primitif selonl’ecriture que l’on emploie; en l’ecrivant avec un grand ”S” il est untype Objet, et en l’ecrivant avec un ”s” il devient un type primitif.

DIABY Kalilou Cours Tutoriel JAVA

Page 21: Tutoriel java

Outils de la POO en JAVA

Pour rester dans le cadre de JAVA, nous parlerons des typesprimitifs les plus utilises que sont:

1 Integer (Entier): Ce type permet de gerer des attributs quiserviront au programmeur de manipuler les entiers.

2 Double (double): Ce type permet de gerer des attributs quiprendront des valeurs decimal avec une plage bien definie(nombre de zeros connue).

3 Float (Reel ): Ce type permet la manipulation de valeurs reel.Vous remarque sans doute qu’il a les memes fonctions que ledouble, alors quelle differences existent-ils entre ces deuxtypes.La reponse a cette question serait en terme d’espaces dememoire qu’elle offre aux attributs qui sont declares en cetype; la plage est bien plus importante que celle du double.

DIABY Kalilou Cours Tutoriel JAVA

Page 22: Tutoriel java

Outils de la POO en JAVA

Pour rester dans le cadre de JAVA, nous parlerons des typesprimitifs les plus utilises que sont:

1 Integer (Entier): Ce type permet de gerer des attributs quiserviront au programmeur de manipuler les entiers.

2 Double (double): Ce type permet de gerer des attributs quiprendront des valeurs decimal avec une plage bien definie(nombre de zeros connue).

3 Float (Reel ): Ce type permet la manipulation de valeurs reel.Vous remarque sans doute qu’il a les memes fonctions que ledouble, alors quelle differences existent-ils entre ces deuxtypes.La reponse a cette question serait en terme d’espaces dememoire qu’elle offre aux attributs qui sont declares en cetype; la plage est bien plus importante que celle du double.

DIABY Kalilou Cours Tutoriel JAVA

Page 23: Tutoriel java

Outils de la POO en JAVA

Pour rester dans le cadre de JAVA, nous parlerons des typesprimitifs les plus utilises que sont:

1 Integer (Entier): Ce type permet de gerer des attributs quiserviront au programmeur de manipuler les entiers.

2 Double (double): Ce type permet de gerer des attributs quiprendront des valeurs decimal avec une plage bien definie(nombre de zeros connue).

3 Float (Reel ): Ce type permet la manipulation de valeurs reel.Vous remarque sans doute qu’il a les memes fonctions que ledouble, alors quelle differences existent-ils entre ces deuxtypes.La reponse a cette question serait en terme d’espaces dememoire qu’elle offre aux attributs qui sont declares en cetype; la plage est bien plus importante que celle du double.

DIABY Kalilou Cours Tutoriel JAVA

Page 24: Tutoriel java

Outils de la POO en JAVA

1 Char (caractere): Celui ci permet la gestion descaracteres(Exemple : a, est un caractere).

2 String (Chaıne de caracteres) : Comme son nom l’indiquepermet la gestion de chaınes de caracteres(mot bien faites oupas).

Retenez que ce sont des attributs qui vous serviront dansvotre programme vous pourriez choisir les noms qui vous sien.

DIABY Kalilou Cours Tutoriel JAVA

Page 25: Tutoriel java

Outils de la POO en JAVA

1 Char (caractere): Celui ci permet la gestion descaracteres(Exemple : a, est un caractere).

2 String (Chaıne de caracteres) : Comme son nom l’indiquepermet la gestion de chaınes de caracteres(mot bien faites oupas).

Retenez que ce sont des attributs qui vous serviront dansvotre programme vous pourriez choisir les noms qui vous sien.

DIABY Kalilou Cours Tutoriel JAVA

Page 26: Tutoriel java

Outils de la POO en JAVA

1

2 Les types Objets

Lorsque l’on parle de type Objet, en fait l’on fait reference a unmodele qui nous est propre; c’est a dire que ce type a ete creer parnous meme.Ce type possede des comportements qui ont ete definies par leprogrammeur lui meme. Pour ce qui est de l’exemple voir la partiesur les classes.Exemple : Personne dika = new Personne();

DIABY Kalilou Cours Tutoriel JAVA

Page 27: Tutoriel java

Quelques mots clefs

Quelques mots clefs

1 this

2 super

3 null

DIABY Kalilou Cours Tutoriel JAVA

Page 28: Tutoriel java

Quelques mots clefs

Quelques mots clefs

1 this

2 super

3 null

DIABY Kalilou Cours Tutoriel JAVA

Page 29: Tutoriel java

Quelques mots clefs

Quelques mots clefs

1 this

2 super

3 null

DIABY Kalilou Cours Tutoriel JAVA

Page 30: Tutoriel java

Quelques mots clefs

1 this

Le mot clef this, est l’un des termes le plus utilise en POO.Car il permet au programmeur de specifier a son code qu’ilsouhaiterait effectuer une tache ou un traitement sur l’objet encours; il permet donc l’instanciation de l’objet en cours.Sa syntaxe est : this.objet;Il s’utilise tres souvent a l’interieur de methodes predefinies par lelangage ou definie par le programmeur (l’ utilisateur).

NB : Ne perdez pas de vue le fait qu’en JAVA tout est classe etObjet.

DIABY Kalilou Cours Tutoriel JAVA

Page 31: Tutoriel java

Quelques mots clefs

1

2 super

En POO, nous sommes le plus souvent confrontes a des problemesde redefinition de methodes. Ce qui a tendance a souvent porter aconfusion bon nombre de programmeurs.Pour palier a ce probleme Java a mis a la disposition desprogrammeurs,le mot clef super afin que tout programmeur quisouhaiterait manipuler des methodes redefinies de la classe meredans la classe fille, puisse le faire.Sa syntaxe est la suivante :super.methodeDeLaClasseMereRedefinie();

DIABY Kalilou Cours Tutoriel JAVA

Page 32: Tutoriel java

Quelques mots clefs

1

2

3 null

En POO, le vide est symbolise par le terme null et non par unespace blanc(champ vide).Parlant du vide qu’entendons-nous?Par vide, nous exprimons le fait pour un objet, son existence oupas.Partant de l’exemple de certaines chemises, il est possible des’apercevoir que certaines d’entre elles n’ont pas de poches. Onpourrait dans ce cas en JAVA, parler de poche == null .

DIABY Kalilou Cours Tutoriel JAVA

Page 33: Tutoriel java

Les methodes en POO JAVA

Les methodes en POO JAVA

1 Methodes de classe

2 Methodes Objets

3 Redefinition

4 Surchage

DIABY Kalilou Cours Tutoriel JAVA

Page 34: Tutoriel java

Les methodes en POO JAVA

Les methodes en POO JAVA

1 Methodes de classe

2 Methodes Objets

3 Redefinition

4 Surchage

DIABY Kalilou Cours Tutoriel JAVA

Page 35: Tutoriel java

Les methodes en POO JAVA

Les methodes en POO JAVA

1 Methodes de classe

2 Methodes Objets

3 Redefinition

4 Surchage

DIABY Kalilou Cours Tutoriel JAVA

Page 36: Tutoriel java

Les methodes en POO JAVA

Les methodes en POO JAVA

1 Methodes de classe

2 Methodes Objets

3 Redefinition

4 Surchage

DIABY Kalilou Cours Tutoriel JAVA

Page 37: Tutoriel java

Les methodes en POO JAVA

1 Methodes de classe

Une methode peut-etre defini comme une fonction, qui serautilisable dans tout le programme. Elle possede un type deretour(primitif ou objet) , une portee, un ou des arguments, et lemot cle static. Elle permet une organisation plus simple et efficacedes objets que nous auront a utiliser.Exemple de methode de classe :• Type de retour: void (rien)• Portee : Public• Le nom de la methode ici correspond a methode-de-classe• Nombre d’arguments : aucun

DIABY Kalilou Cours Tutoriel JAVA

Page 38: Tutoriel java

Les methodes en POO JAVA

1

2 Methodes Objets

Methodes d’objets quand a eux n’ont pas le mot cle static. Nousverrons plus en detail cela lorsque nous verrons les getters etsetters.• Portee Public : Accessible a toutes les classes du package.• private: Accessible qu’aux methodes de la classe dans laquelleelle est contenue.• protected : Accessible au meme package.

DIABY Kalilou Cours Tutoriel JAVA

Page 39: Tutoriel java

Les methodes en POO JAVA

DIABY Kalilou Cours Tutoriel JAVA

Page 40: Tutoriel java

Les methodes en POO JAVA

1

2

3 Redefinition

La redefinition consiste a reecrire une methode deja existante denotre classe mere, dans notre classe heritiere ( fille ).De ce fait si l’on herite de la methode JavaBean(String nom,String prenom), on pourrait redefinir cette methode en lamodifiant en gardant ces arguments, portee, ...Exemple : Redefinition.java

DIABY Kalilou Cours Tutoriel JAVA

Page 41: Tutoriel java

Les methodes en POO JAVA

- JavaBean.java

import java.util.Set;public class JavaBean {String nom, prenom;public JavaBean() { ... }public String getNom() {return nom; }public String getPrenom() {return prenom; }public void setNom(String nom) {this.nom = nom; }public void setPrenom(String prenom) {this.prenom = prenom; }

DIABY Kalilou Cours Tutoriel JAVA

Page 42: Tutoriel java

Les methodes en POO JAVA

public void JavaBeanMethodeARedefinir(String nom, Stringprenom) {System.out.println(”Je suis la mehodeJavaBeanMethodeARedefinir de la classe mere”); }}

DIABY Kalilou Cours Tutoriel JAVA

Page 43: Tutoriel java

Les methodes en POO JAVA

1

2

3

4 Surchage

La surcharge ou sur-definition consiste pour une methode d’etrereecrite avec des arguments differents.Par exemple dans la premiere, on peut avoir un argument, dans ladeuxieme deux argument,et ainsi de suite, ... , et toujours engardant la meme signature(type de retour, portee, nom de lamethode).Exemple : Sucharge.java

DIABY Kalilou Cours Tutoriel JAVA

Page 44: Tutoriel java

Les methodes en POO JAVA

class Test {public void personne(String nom) {// la methode prend un argumentSystem.out.println(”Je prends un seul argument qui est : ” +nom); }public void personne(String nom, String prenom) {// la methode prend deux argumentsSystem.out.println(”Je prends deux arguments qui sont : ” + nom+ ” ” + prenom); }}public class Surchage {public static void main(String[ ] args) {Test objet = new Test();// creation d’un nouvel objetobjet.personne(”DIABY”);objet.personne(”DIABY”, ”Kalilou”); }}

DIABY Kalilou Cours Tutoriel JAVA

Page 45: Tutoriel java

Les methodes en POO JAVA

Polymorphisme

Le polymorphisme est le fait de pouvoir redefinir des methodesherite de la classe de base. C’est la possibilite de traiter de lameme maniere des objets de type differents, pour peu qu’ils soienttous de classes derivees de la meme classe mere.Son but est d’ameliorer l’extensibilite d’un programme.

DIABY Kalilou Cours Tutoriel JAVA

Page 46: Tutoriel java

Les methodes en POO JAVA

Encapsulation

L’encapsulation est un terme qui signifie qu’il n’est pas possibled’agir directement sur les donnees.Pour ce faire, on utilise des methodes qui jouent le roled’interfaces.En JAVA, cela est realise via les accesseurs et mutateurs setrouvant dans notre bean.

DIABY Kalilou Cours Tutoriel JAVA

Page 47: Tutoriel java

Interaction utilisateur

Interaction utilisateur

1 Generalites

2 Methode de saisie utilisateur

DIABY Kalilou Cours Tutoriel JAVA

Page 48: Tutoriel java

Interaction utilisateur

Interaction utilisateur

1 Generalites

2 Methode de saisie utilisateur

DIABY Kalilou Cours Tutoriel JAVA

Page 49: Tutoriel java

Interaction utilisateur

1 Generalites

Dans toute activite et vie humaine, la communication est unecondition necessaire a son bon fonctionnement et son maintient.C’est s’inspirant de ce principe, que tout programme se doit d’etrele plus interactif que possible en donnant la main a l’utilisateur detelle sorte a eviter qu’il s’ennuie assez vite lorsqu’il sera amener autiliser votre application.En POO, ou PP , cela se fait via des methodes deja existantesdans des classes fournies et developpeurs par les concepteurs de celogiciel.

DIABY Kalilou Cours Tutoriel JAVA

Page 50: Tutoriel java

Interaction utilisateur

Methode de saisie utilisateur

1 Scanner

2 Autres methodes

DIABY Kalilou Cours Tutoriel JAVA

Page 51: Tutoriel java

Interaction utilisateur

Methode de saisie utilisateur

1 Scanner

2 Autres methodes

DIABY Kalilou Cours Tutoriel JAVA

Page 52: Tutoriel java

Interaction utilisateur

1 Scanner

La methode Scanner est une methode permettant de donner lamain a l’utilisateur. Elle s’ insert dans notre code grace a ce boutde code :

Scanner saisieUtilisateur = new Scanner(System.in);

/* System est une classe JAVA. Le ”.in” ou ”.out” permetd’utiliser respectivement l’entree et la sortie du clavier .*/On a aussi besoin d’importer le package qui lui faut. Ici, le termepackage correspond a une librairie. Car en important un package,on charge la librairie dans lequel se trouve la methode appelante.Cela se fait grace a cette instruction : import java.io.*;// Le * permet d’importer tous les elements de cette librairied’entree et sortie.

DIABY Kalilou Cours Tutoriel JAVA

Page 53: Tutoriel java

Interaction utilisateur

Exemple : Interaction.java

import java.util.Scanner;class Interaction{public static void main String [ ] args){private int valeur1;Scanner lecture = new Scanner(System.in);valeur1 = lecture.nextInt();}}

DIABY Kalilou Cours Tutoriel JAVA

Page 54: Tutoriel java

Interaction utilisateur

1

2 Autres methodes

Pour ce qui est des autres methodes veuillez a vous referer au web.Un tas de documents s’y trouvent.

DIABY Kalilou Cours Tutoriel JAVA

Page 55: Tutoriel java

Outils de comparaisons

Outils de comparaisons

1 L’egalite ( ==) et l’ affectation (=)

2 Le OU logique (||)3 Le ET logique (& &)

4 Le modulo (%)

DIABY Kalilou Cours Tutoriel JAVA

Page 56: Tutoriel java

Outils de comparaisons

Outils de comparaisons

1 L’egalite ( ==) et l’ affectation (=)

2 Le OU logique (||)3 Le ET logique (& &)

4 Le modulo (%)

DIABY Kalilou Cours Tutoriel JAVA

Page 57: Tutoriel java

Outils de comparaisons

Outils de comparaisons

1 L’egalite ( ==) et l’ affectation (=)

2 Le OU logique (||)3 Le ET logique (& &)

4 Le modulo (%)

DIABY Kalilou Cours Tutoriel JAVA

Page 58: Tutoriel java

Outils de comparaisons

Outils de comparaisons

1 L’egalite ( ==) et l’ affectation (=)

2 Le OU logique (||)3 Le ET logique (& &)

4 Le modulo (%)

DIABY Kalilou Cours Tutoriel JAVA

Page 59: Tutoriel java

Outils de comparaisons

L’egalite (==) et l’ affectation (=)

En Programmation, le signe == et = different.

1 l’ affectation (=)

2 L’egalite (==)

DIABY Kalilou Cours Tutoriel JAVA

Page 60: Tutoriel java

Outils de comparaisons

L’egalite (==) et l’ affectation (=)

En Programmation, le signe == et = different.

1 l’ affectation (=)

2 L’egalite (==)

DIABY Kalilou Cours Tutoriel JAVA

Page 61: Tutoriel java

Outils de comparaisons

1 l’ affectation (=)

L’affectation consiste a donner une valeur a un attribut bienspecifique; elle fixe la valeur de cette variable alpha a une valeurbeta.Sa syntaxe est : Type variable1 = variable2;Toutefois, il nous est possible d’affecter une valeur a plusieursvariables d’un coup.

Sa syntaxe est : Type variable1, variable2 = variable3;

Exemple : Affectation.javaclass Affectation {String nom = ”DIABY”;// On affecte ici au nom le mot DIABYint numero, identifiant = 123;}

DIABY Kalilou Cours Tutoriel JAVA

Page 62: Tutoriel java

Outils de comparaisons

1

2 L’egalite ( ==)

L’Egalite consiste a tester si une valeur valeur1 correspond a unevaleur valeur2. Elle s’utilise generalement avec les structure decontroles.

Sa syntaxe est : if(valeur1 == valeur2){ //instruction }

Exemple : Egalite.javaclass Egalite{Type valeur1 = 12; Type valeur2 = 50;if(valeur1 = valeur2){System.out.print(”Valeur 1 est egale a valeur 2”);}... }

DIABY Kalilou Cours Tutoriel JAVA

Page 63: Tutoriel java

Outils de comparaisons

1

2

3 Le OU logique (||)

Le OU logique permet d’effectuer des test. Elle s’utilise tressouvent dans les structures de controle.

Sa syntaxe est : if(varaiable1 == variable3 || variable2 ==varaible4){ ... }

Prenons l’exemple de la tenue vestimentaire. Si elle est trempee ousi elles et sale, je ne la mettrai pas.Exemple : OuLogique.javaclass OuLogique{if(tenue == trempee || tenue = sale){System.out.print(” Je ne porterai cette tenue vestimentaire”);}}

DIABY Kalilou Cours Tutoriel JAVA

Page 64: Tutoriel java

Outils de comparaisons

1

2

3

4 Le ET logique( && )

Le ET Logique tout comme le Ou Logique, permet d’effectuer destest. Et elle s’emploie egalement dans les structures de controle.

Sa syntaxe est : if (variable1 == variable3 && variable2 ==variable4){ ... }

Prenons l’exemple des feux tricolores. Si le feu est rouge et qu’iln’y a pas de voiture sur la voie alors je traverse la rue.Exemple : EtLogique.javaclass EtLogique{if ( feux == rouge && voiture == null ){System.out.print(”Je traverse la rue”);}... }

DIABY Kalilou Cours Tutoriel JAVA

Page 65: Tutoriel java

Outils de comparaisons

1

2

3

4

5 Le modulo ( % )

Le modulo consiste en programmation, a un traitement d’unevariable sur une autre variable en vue d’obtenir le reste de cettederniere. En d’autres terme, il consiste a obtenir le reste de ladivision de la variable1 par la variable2. Sa syntaxe est: Typevariable1, variable2, resultat;resultat = variable1 % variable2;Partons d’un exemple simple, pour celui ci. Nous chercherons adeterminer le reste de la division de 5 par 2 (5 modulo 2).

DIABY Kalilou Cours Tutoriel JAVA

Page 66: Tutoriel java

Outils de comparaisons

Exemple : Modulo.javaclass Modulo{int valeur1 = 5;int valeur2 = 2;int reste;// Par defaut, un entier(int) est initialise a zero (0)reste = valeur1 % valeur2;System.out.println(”Le modulo de 5 par 2 est ”+reste);}}

DIABY Kalilou Cours Tutoriel JAVA

Page 67: Tutoriel java

Le JAVABEAN

La norme JAVABEAN

1 Declarations des attributs

2 Constructeurs

3 Accesseur

4 Mutateur

DIABY Kalilou Cours Tutoriel JAVA

Page 68: Tutoriel java

Le JAVABEAN

La norme JAVABEAN

1 Declarations des attributs

2 Constructeurs

3 Accesseur

4 Mutateur

DIABY Kalilou Cours Tutoriel JAVA

Page 69: Tutoriel java

Le JAVABEAN

La norme JAVABEAN

1 Declarations des attributs

2 Constructeurs

3 Accesseur

4 Mutateur

DIABY Kalilou Cours Tutoriel JAVA

Page 70: Tutoriel java

Le JAVABEAN

La norme JAVABEAN

1 Declarations des attributs

2 Constructeurs

3 Accesseur

4 Mutateur

DIABY Kalilou Cours Tutoriel JAVA

Page 71: Tutoriel java

Le JAVABEAN

La norme JAVABEAN

La norme JAVABEAN est un des principes les puissants, lorsquel’on est amener a coder de maniere securise et propre.Elle consisteen creer une classe speciale .java qui contiendra notre bean. Uneclasse JAVABEAN se presente comme suit :- Tous les champs sont declares de types privees - Un constructeurpar defaut est initialise(est ajoute au code de notre classejavabean)- Des accesseurs (getters) et mutateurs (setters) y sont ajoutes- une Serialisation des Objets peut etre envisages

DIABY Kalilou Cours Tutoriel JAVA

Page 72: Tutoriel java

Le JAVABEAN

1 Declarations des attributs

Tout attribut(variables ou champs) doit etre declares de typeprivees. Pourquoi cela ?Cela ne permettra la manipulation de ces dits attributs que par lesaccesseurs et mutateurs commis a chacune de ces variables.Exemple : JavaBean.java

class JavaBean{private String nom, prenom;private int age;private float taille;}

DIABY Kalilou Cours Tutoriel JAVA

Page 73: Tutoriel java

Le JAVABEAN

1

2 Constructeurs

Un constructeur est une methode qui porte le meme nom que laclasse, elle ne comporte pas de parametres,ni d’arguments, ni detype de retour, et a une portee de type public.Il est a noter que toute classe Java possede un constructeur pardefaut, et ceux meme s’il n’est pas ecrit dans notre code.Un constructeur a notre classe bean se doit d’etre crees.Exemple : JavaBean.java

class JavaBean{public JavaBean(){// On definit ici ce que fera le constructeur( les actions qu’il devraexecuter). }}

DIABY Kalilou Cours Tutoriel JAVA

Page 74: Tutoriel java

Le JAVABEAN

1

2

3 Accesseur

On utilise des methodes get pour pouvoir manipuler les differentsattributs declares de type prives. Ces differentes methodes get,appelle getters, permettent une manipulation plus securise desdifferentes valeurs.Exemple : JavaBean.java

class JavaBean{

private String nom, prenom;public String getNom(){return nom;}}

DIABY Kalilou Cours Tutoriel JAVA

Page 75: Tutoriel java

Le JAVABEAN

1

2

3

4 Mutateur

Idem comme pour le getters. Le mutateur est une methode setpermettant la manipulation des attributs declares de type prives etqui se trouve dans notre classe java.

Exemple : JavaBean.java

class JavaBean{

private String nom, prenom;public void setNom(String nom){this.nom = nom; }}

DIABY Kalilou Cours Tutoriel JAVA

Page 76: Tutoriel java

Le JAVABEAN

NB: Ce principe de programmation respectant la normeJAVABEAN permet une meilleure securite et facilite la reutilisationdes objets auxquels l’on a affaire.

DIABY Kalilou Cours Tutoriel JAVA

Page 77: Tutoriel java

Classe

Les Classes en JAVA

1 Classe Principale

2 Classe Simple( Non principale )

3 Classe Abstraites

DIABY Kalilou Cours Tutoriel JAVA

Page 78: Tutoriel java

Classe

Les Classes en JAVA

1 Classe Principale

2 Classe Simple( Non principale )

3 Classe Abstraites

DIABY Kalilou Cours Tutoriel JAVA

Page 79: Tutoriel java

Classe

Les Classes en JAVA

1 Classe Principale

2 Classe Simple( Non principale )

3 Classe Abstraites

DIABY Kalilou Cours Tutoriel JAVA

Page 80: Tutoriel java

Classe

Classe

En POO, la notion de classe est un des elements les plusimportants principe qui lui conferent le titre de langage de POO etle differencie des langages de Programmation Procedurale.Il est de mise de mettre en CAPITAL (ou en Majuscule) lapremiere lettre de chaque mot lorsqu’il s’agit de donner le nomd’une classe. Et par la suite tous les nouveaux mots qui lacomposent, la premiere lettre en CAPITALE.En JAVA, il existe des plusieurs types de classes. Toutefois, au seind’un projet (ou application) plusieurs classes peuvent exister maisune seule classe main existe et est lancee a l’execution de notreprojet. une classe se declare comme suit:class NomDeLaClasse{

DIABY Kalilou Cours Tutoriel JAVA

Page 81: Tutoriel java

Classe

1 Classe principale

Une classe principale est une classe qui permet l’execution de notreapplication et elle est unique. Elle se declare comme suit :Exemple :class ClassePrincicipale{/* Les deux lignes qui suivent permettent de dire a notre EDI qu’ils’agit de notre classe principale. */public static void main(String [ ] args){// Instruction de notre main }}

DIABY Kalilou Cours Tutoriel JAVA

Page 82: Tutoriel java

Classe

1

2 Classe Simple( Non principale )

Une classe est par definition, un ensemble dans lequel se trouve lesinformations specifique a notre traitement en POO. Elle se ditsimple, si elle ne comporte pas de main.

NB: Toutefois, attention a ne pas generaliser trop vite.

Sa forme generale est : class NomDeLaClasse{ ... }

Prenons comme exemple, une classe contenant en son sein unattribut et une methode. Exemple : Simple.javaclass Simple{private String nom =”DIABY”;public void affiche(){System.out.print(”Salut”);}}

DIABY Kalilou Cours Tutoriel JAVA

Page 83: Tutoriel java

Classe

1

2

3 Classe Abstraites

Sachez tout simplement qu’elles existent.Nous n’en parlerons pas dans ce tutoriel.

DIABY Kalilou Cours Tutoriel JAVA

Page 84: Tutoriel java

Structures de controles

Structures de controles : boucles

1 IF

2 FOR

3 DO WHILE

4 SWITCH

DIABY Kalilou Cours Tutoriel JAVA

Page 85: Tutoriel java

Structures de controles

Structures de controles : boucles

1 IF

2 FOR

3 DO WHILE

4 SWITCH

DIABY Kalilou Cours Tutoriel JAVA

Page 86: Tutoriel java

Structures de controles

Structures de controles : boucles

1 IF

2 FOR

3 DO WHILE

4 SWITCH

DIABY Kalilou Cours Tutoriel JAVA

Page 87: Tutoriel java

Structures de controles

Structures de controles : boucles

1 IF

2 FOR

3 DO WHILE

4 SWITCH

DIABY Kalilou Cours Tutoriel JAVA

Page 88: Tutoriel java

Structures de controles

Structures de controles : boucles

Les structures de controles repondent a une certaine logiqueauquel nous sommes confrontes tous les jours de notre vie. Cettelogique, se trouve rapidement retranscrit dans le code. Vue ce fait,et aussi pour ne pas avoir vous embrouille on fera des exemplestres terrains c’est a dire de la vie courante.Son principe est de faire un certain controle puis d’en verifier saveracite puis en fonction de la reponse obtenue declenche uneaction(un evenement).

DIABY Kalilou Cours Tutoriel JAVA

Page 89: Tutoriel java

Structures de controles

1 IF

F (ou Si ), est une structure de controle a laquelle nous sommesconfrontes a tout instant de notre vie. Cette structure de controlea pour but de tester qu’une seule fois l’instruction qui lui estsoumise.

Elle est de la forme : if (// argument) { ... } else { ... }

Partons d’un exemple : S’il fait jour ou qu’il est 7 h 30 min, je boisdu cafe, sinon s’il est midi je mange du riz sinon s’il est 16 h jeprendrais un gouter, sinon s’il fait soir je mangerais du leger,sinon(dans le cas ou aucune de ces 3 condition ne parvient a etrerealise ) je me contenterais d’un verre d’eau.

DIABY Kalilou Cours Tutoriel JAVA

Page 90: Tutoriel java

Structures de controles

Exemple : StructureContole.javaclass StructureControle{

public static void main(String[ ] args) {String heure = ”jour”;// Vous pouvez vous amusez a changez la valeur de l’heure.Remarquez,// il est de type Stringif (heure == ”jour”) {System.out.print(”Je bois du cafe au lait”);} else if (heure == ”midi”) {System.out.print(”Je mangerai du riz”);} else if (heure == ”soir”) {System.out.print(”Je mangerai du leger”);} else {System.out.print(”Je bois de l’eau”);}}

DIABY Kalilou Cours Tutoriel JAVA

Page 91: Tutoriel java

Structures de controles

1

2 FOR

For ( pour en francais), quand a elle s’utilise dans le cas d’iterations (suite d’evenements). Cette structure de controle a pourbut de tester l’instruction qui lui est soumise d’une valeuralpha(point de depart) a une autre valeur beta(valeur d’arret).

Elle est de la forme : for (int alpha, alpha < beta; alpha ++) { ...}

Prenons l’exemple des bonbons.Pour toute personne dont l’age est inferieure a 18, on lui donne unbonbon.

DIABY Kalilou Cours Tutoriel JAVA

Page 92: Tutoriel java

Structures de controles

Exemple : StructureControle.javapublic class StructureControle {public static void main(String[ ] args) {for (int agePersonne = 0; agePersonne < 18; agePersonne++) {System.out.print(”Vous aurez droit a un bonbon”); }}}

DIABY Kalilou Cours Tutoriel JAVA

Page 93: Tutoriel java

Structures de controles

1

2

3 DO WHILE

WHILE( tant que), pourrait etre definit comme s’utilisant pourverifier un etat bien specifique , devant etre rempli. Sa syntaxe :while(//argument){...}DO WHILE, a un comportement quasi similaire a celui du while ;seul difference, l’instruction sera execute au moins une fois. Sasyntaxe : do { ... } while(//argument) { ... }Cette structure de controle, do while, a pour but de lancer(oud’executer) l’instruction se trouvant dans le do, puis de tester cellese trouvant dans le while.Exemple : Tant que l’age de l’utilisateur est inferieur a 18 dites luiqu’il n’a pas acces a ce service. Faire Salut , et apres on entre dansle while en verifiant que l’utilisateur est ages d’au moins 18 ans eton lui donnera acces dans le cas contraire on lui dira qu’il n’a pasacces a ce service.

DIABY Kalilou Cours Tutoriel JAVA

Page 94: Tutoriel java

Structures de controles

Exemple : StructureControle.java

import java.util.Scanner;

public class StructureControle {public static void main(String[ ] args) {Scanner lecture = new Scanner(System.in);int age;do {System.out.println(”Salut, veuillez saisir votre age”);age = lecture.nextInt(); }while (age >= 18);System.out.print(”Vous n’aviez pas acces a ce service”); }}

DIABY Kalilou Cours Tutoriel JAVA

Page 95: Tutoriel java

Structures de controles

1

2

3

4 SWITCH

Switch est la structure de controle que j’adore car pour moi elles’utilise dans les situations ou nous connaissions les cas de figuresqui peuvent se presenter a l’avance. Elle devient plus precise, doncevite l’utilisation du IF qui se trouve etre trop englobant(generaliste). Sa forme est :switch (//valeur ) {case value: //...break;default://...break;}Utilisons ici, le cas d’un programme qui demande a un utilisateurde faire un choix entre differentes categories d’ages (mineur,adulte, vieillard) en fonction de son age et nous lui retournerons unmessage lui donnons sa categorie d’age.DIABY Kalilou Cours Tutoriel JAVA

Page 96: Tutoriel java

Structures de controles

Exemple : StructureControle.java

import java.util.Scanner;public class PPrincipale {public static void main(String[] args) {Scanner lecture = new Scanner(System.in);int age;System.out.println(”Veuillez faire votre choix : 1 pour mineur , 2pour adulte, 3 pour vieillard”);age = lecture.nextInt();switch (age) {case 1: System.out.print(”Vous etes un mineur”); break;case 2: System.out.print(”Vous etes un adulte”); break;case 3: System.out.print(”Vous etes un vieillard”); break;default: System.out.print(”Vous etes inconnu dans notre base”);break; }} }

DIABY Kalilou Cours Tutoriel JAVA

Page 97: Tutoriel java

Tableau

Tableau

1 Generalites

2 Tableau en JAVA

DIABY Kalilou Cours Tutoriel JAVA

Page 98: Tutoriel java

Tableau

Tableau

1 Generalites

2 Tableau en JAVA

DIABY Kalilou Cours Tutoriel JAVA

Page 99: Tutoriel java

Tableau

1 Generalites

Un tableau est un moyen de regrouper des elements dans un seulobjet, puis de permettre d’effectuer des traitements sur ce dernierque sont la lecture, ecriture, execution d’operations.En Programmation, le tableau s’utilise dans le gain d’espacememoire, car toute conception d’ application se veut la pluseconomique possible en termes de memoires utilises.

DIABY Kalilou Cours Tutoriel JAVA

Page 100: Tutoriel java

Tableau

1

2 Tableau en JAVA

1 Tableau Primaire

2 Tableau a une dimension

3 Tableau a plusieurs dimensions

4 Tableau de type ArrayList

DIABY Kalilou Cours Tutoriel JAVA

Page 101: Tutoriel java

Tableau

1

2 Tableau en JAVA

1 Tableau Primaire

2 Tableau a une dimension

3 Tableau a plusieurs dimensions

4 Tableau de type ArrayList

DIABY Kalilou Cours Tutoriel JAVA

Page 102: Tutoriel java

Tableau

1

2 Tableau en JAVA

1 Tableau Primaire

2 Tableau a une dimension

3 Tableau a plusieurs dimensions

4 Tableau de type ArrayList

DIABY Kalilou Cours Tutoriel JAVA

Page 103: Tutoriel java

Tableau

1

2 Tableau en JAVA

1 Tableau Primaire

2 Tableau a une dimension

3 Tableau a plusieurs dimensions

4 Tableau de type ArrayList

DIABY Kalilou Cours Tutoriel JAVA

Page 104: Tutoriel java

Tableau

En JAVA

En JAVA, il s’utilise pour stocker des donnes sur un individus bienspecifique. Prenons un individus qui est une personne, on pourraitavoir sur lui son nom, prenom, age, sexe; que nous stockerons dansun tableau de type String.

DIABY Kalilou Cours Tutoriel JAVA

Page 105: Tutoriel java

Tableau

1 Tableau Primaire

Par tableau primaire, j’entends tableau de type primitifs. Ondistingue plusieurs types dont les tableau a une dimension et lestableaux a deux dimensions.

DIABY Kalilou Cours Tutoriel JAVA

Page 106: Tutoriel java

Tableau

1

2 Tableau a une dimension

Le tableau a une dimension est un type de tableau ne pouvantprendre qu’une valeur par zone de memoire.Sa syntaxe est :

Pour creer un tableau d’entier : int tableau [] = {””,”””,... }Pour recuperer un element de ce tableau : tableau[0]

NB : En java et dans la plupart des langages de programmations,on commence par compter a partir de zero (0). Faisant de 0 lepremier element.Reprenons l’exemple precedent portant sur la personne possedantun nom, ...

DIABY Kalilou Cours Tutoriel JAVA

Page 107: Tutoriel java

Tableau

Exemple : TableauUneDimension.javapublic class TableauUneDimension {public static void main(String[ ] args) {String[ ] personne = { ”DIABY”, ”Kalilou”, ”21”, ”Masculin” };System.out.print(personne[0] + ” ” + personne[1] + ” ” +personne[2] + ” ans et de sexe ” + personne[3]);}}

DIABY Kalilou Cours Tutoriel JAVA

Page 108: Tutoriel java

Tableau

1

2

3 Tableau a plusieurs dimensions

Le tableau a plusieurs dimensions fonctionnent de la mememaniere que celui a une dimension a la seule difference qu’il prendplus d’un element sur une zone memoire.Partant de l’exemple precedant si l’on etait amener a identifier lapersonne se trouvant a une position donnee : cas d’une salle declasse ou autre salle bien disposee. l’on serait amener a creer undeuxieme tableau; ce qui serait trop long et fatiguant.Pour y remedier l’on a disposition le tableau a plusieursdimensions.Et dans ce cas precis, on peut creer un tableau a 2dimensions et qui aura en une seule zone tous les elements relatifsa la position d’une personne.

DIABY Kalilou Cours Tutoriel JAVA

Page 109: Tutoriel java

Tableau

Exemple : TableauDeuxDimensions.javapublic class TableauDeuxDimensions {public static void main(String[ ] args) {String[ ][ ] personnes = { { ”DIABY Kalilou”, ”Kone Paterson”,”GOHORE BI Arsene”, ”IBO Landry” }, { ”KOUAME Dimitry”,”AMICHIA Affiba”, ” FOLLY Vomua”, ”N’CHO Loıc ” } };

System.out.print(personnes[0][0]);}

/* Ici il affichera la personne la ligne 0 (ligne 1) et la colonne 0 (colonne 0), qui se trouve etre DIABY Kalilou */// Toutefois, amusez-vous a changer les differentes valeurs}

DIABY Kalilou Cours Tutoriel JAVA

Page 110: Tutoriel java

Tableau

1

2

3

4 Tableau de type ArrayList

Une ArrayList est un tableau listes pour stocker et contenir unensemble d’elements sous forme de liste.Sa syntaxe est : ArrayList<Type Objet> nomArrayList = newArrayList<Type Objet>

DIABY Kalilou Cours Tutoriel JAVA

Page 111: Tutoriel java

Tableau

Exemple : ArrayList1.javaimport java.util.ArrayList;public class ArrayList1 {public static void main(String[ ] args) {ArrayList <String> list = new ArrayList<String>();list.add(”DIABY”); // on insere un nom a l’index 0list.add(”Kalilou”);list.add(2, ”Masculin”);/* Ici, le 2 est mis pour l’index; le forcant ainsi a le mettre al’index 2. Sinon, l’on aurait Kalilou qui aurait ete a la position 1s’il avait ete declaree comme DIABY */System.out.print(”L’enregistrement se trouvant a la position 0 est” + list.get(0) + ” et a la position 1 est : ” + list.get(1) + ” et ala position 2 est : ” + list.get(2)); }}

DIABY Kalilou Cours Tutoriel JAVA

Page 112: Tutoriel java

Exception

1 Exception predefinies

2 Exception personnalisees

DIABY Kalilou Cours Tutoriel JAVA

Page 113: Tutoriel java

Exception

1 Exception predefinies

2 Exception personnalisees

DIABY Kalilou Cours Tutoriel JAVA

Page 114: Tutoriel java

Exception

1 Exception predefinies

1 TRY

2 CATCH

3 FINALY

DIABY Kalilou Cours Tutoriel JAVA

Page 115: Tutoriel java

Exception

1 Exception predefinies

1 TRY

2 CATCH

3 FINALY

DIABY Kalilou Cours Tutoriel JAVA

Page 116: Tutoriel java

Exception

1 Exception predefinies

1 TRY

2 CATCH

3 FINALY

DIABY Kalilou Cours Tutoriel JAVA

Page 117: Tutoriel java

Exception

Exception predefinies

En POO, ou en Programmation Procedurale (PP), la gestion deserreurs est un critere necessaire de bon codage. Par ce principe,l’on est capable d’intercepter d’eventuelles erreurs qui pourraitsurgir pendant l’utilisation de notre application par l’utilisateur oudes erreurs autres. Pour ce faire, on utilise des instructions quesont : try, catch(), finally.

DIABY Kalilou Cours Tutoriel JAVA

Page 118: Tutoriel java

Exception

1 L’instruction TRY

L’instruction try est celle qui nous permettra d’executer notre boutde code susceptible de genere d’eventuelles erreurs.Exemples : Exception.java

class Exception{

public static void main(String [ ] args){

private int valeur1, valeur2;private float resultat;

try{resultat = valeur1 / valeur2;}}

DIABY Kalilou Cours Tutoriel JAVA

Page 119: Tutoriel java

Exception

1

2 L’instruction CATCH

L’instruction Catch est celle chargee de gerer l’erreur qui estgenerer par notre application.Elle capte ce message et en renvoieun autre beaucoup plus simple et facile de comprehension par leclient.

DIABY Kalilou Cours Tutoriel JAVA

Page 120: Tutoriel java

Exception

Exemples : Exception.java

class Exception{

public static void main(String [] args){

private int valeur1, valeur2;private float reultat;

try{resultat = valeur1 / valeur2;}catch(Exception une exception arithmetique sera genere){System.out.print(”Erreur !”);}} } }

DIABY Kalilou Cours Tutoriel JAVA

Page 121: Tutoriel java

Exception

1

2

3 L’instruction FINALLY

L’instruction finally permet l’execution de la commande de maniereobligatoire, c’est a dire apres execution des du try et du catch.Cette instruction s’utilise generalement avec une base de donnees(nous emploierons dans la suite de ce tutoriel tres souvent le termedatabase en remplacement de base de donnees), afin dedeconnecter notre database, dans le cas ou elle ne reussit pas aetre deconnecte dans le try et le catch.

DIABY Kalilou Cours Tutoriel JAVA

Page 122: Tutoriel java

Exception

Exemple : Exception.java

class Exception {

public static void main(String [ ] args){

private int valeur1, valeur2;private float reultat;

try{resultat = valeur1 / valeur2;}catch(Exception une exception arithmetique sera genere ){System.out.print(”Erreur !”);}finally {System.out.println(”Execution des instructions se trouvant dans lefinally”);}} }

DIABY Kalilou Cours Tutoriel JAVA

Page 123: Tutoriel java

Exception

1 Exception personnalisee

1 L’instruction THROW

2 L’instruction THROWS

DIABY Kalilou Cours Tutoriel JAVA

Page 124: Tutoriel java

Exception

1 Exception personnalisee

1 L’instruction THROW

2 L’instruction THROWS

DIABY Kalilou Cours Tutoriel JAVA

Page 125: Tutoriel java

Exception

Exception personnalisees

Une exception personnalise s’utilise generalement lorsque l’onsouhaite generer soit soit meme ces exceptions ; il s’avere etre nullorsque l’exception que l’on souhaite creer existe deja. Pour cefaire, on utilise le mot cle throw et throws. Pour ce faire, on creeune nouvelle methode dans laquelle on definit nos differentesexceptions.

DIABY Kalilou Cours Tutoriel JAVA

Page 126: Tutoriel java

Exception

1 L’instruction THROW

Le mot clef throw permet de gerer manuellement une exception.Cela se fait grace a la creation de nouvel objet du type del’exception que nous venons de creer nous meme.Allez comprendre, que nous densifierons les differentes erreurspossibles et capables de survenir, et aussi ce qu’il en devra resulterune fois que ce cas se presentera.

Sa syntaxe est : throw new Exception

Partons ici d’un exemple tout simple qui consistera a nous affichertout simplement un message qu’est : Erreur ! exceptionpersonnalise.

DIABY Kalilou Cours Tutoriel JAVA

Page 127: Tutoriel java

Exception

Exemple : ExceptionPersonnalise.javapublic class ExceptionPersonnalise extends Exception{@Override public String getMessage() {System.out.println(”Erreur ! exception personnalise ”);return super.getMessage(); }}- PPrincipale1.javapublic class PPrincipale {public static void main(String[] args) {try {throw new ExceptionPersonnalise();} catch (Exception e) {e.printStackTrace(); }}}

1P pour programmeDIABY Kalilou Cours Tutoriel JAVA

Page 128: Tutoriel java

Exception

1

2 L’instruction THROWS

Le mot clef throws permet d’indiquer a notre JVM que cettemethode est susceptible de declencher une erreur. Sa syntaxe est :Methode throws ClasseExceptionCreerParUtilisateur { ... }

DIABY Kalilou Cours Tutoriel JAVA

Page 129: Tutoriel java

Heritage

1 Generalite

2 Heritage selon JAVA

DIABY Kalilou Cours Tutoriel JAVA

Page 130: Tutoriel java

Heritage

1 Generalite

2 Heritage selon JAVA

DIABY Kalilou Cours Tutoriel JAVA

Page 131: Tutoriel java

Heritage

1 Generalite

L’heritage est une technique de la POO qui permet a une classefille d’heriter de tous les attributs et methodes de la classe mere(debase). On utilise pour cela le mot clef extends.L’heritage permet de ce fait un gain en temps de travail et decalcul, et en memoire puisque l’on aura qu’a heriter d’une classe etautomatiquement posseder de toutes ses fonctionnalites.De plus, on peut en rajouter de nouvelles que ce soit bien desmethodes au sein de cette classe fille, ou les redefinir ou lessurcharger.

DIABY Kalilou Cours Tutoriel JAVA

Page 132: Tutoriel java

Heritage

1

2 Heritage selon JAVA

En JAVA, la question d’heritage peut s’etendre jusqu’a celle del’implementation. De ce fait, une classe Java peut heriter d’une etunique classe Java, mais peut toutefois implementer plusieursInterfaces.Pour qu’une classe herite d’une autre classe on utilise le mot clefextends et pour qu’elle puisse implementer une interface on utilisele mot clef implements.

DIABY Kalilou Cours Tutoriel JAVA

Page 133: Tutoriel java

Heritage

Exemple : Heritage.java

class Heritage extends JavaBean implements Interface1,ActionListener{// instruction et code de notre classe Heritage// Action Listener est un ecouteur d’action.// Nous y reviendrons plus tard}

DIABY Kalilou Cours Tutoriel JAVA

Page 134: Tutoriel java

Design Pattern

1 Generalites

2 M-V-C

DIABY Kalilou Cours Tutoriel JAVA

Page 135: Tutoriel java

Design Pattern

1 Generalites

2 M-V-C

DIABY Kalilou Cours Tutoriel JAVA

Page 136: Tutoriel java

Design Pattern

1 Generalites

Le design pattern est une architecture destine en generale vers desprojets de grande envergure. Toutefois, Il est applicable a tout typede projet.Le design pattern n’est pas une affaire de JAVA pour ne pas direPOO, elle s’applique aussi aux langages du WEB tels que PHP,Ruby, ...Dans notre tutoriel, nous parlerons du M-V-C. Cependant, il est anoter qu’il existe le M-V-C 2. Pour plus d’informations se referer aInternet.

DIABY Kalilou Cours Tutoriel JAVA

Page 137: Tutoriel java

Design Pattern

1 M-V-C : Modele Vue Controleur

1 Modele

2 Vue

3 Controleur

4 M-V-C 2

DIABY Kalilou Cours Tutoriel JAVA

Page 138: Tutoriel java

Design Pattern

1 M-V-C : Modele Vue Controleur

1 Modele

2 Vue

3 Controleur

4 M-V-C 2

DIABY Kalilou Cours Tutoriel JAVA

Page 139: Tutoriel java

Design Pattern

1 M-V-C : Modele Vue Controleur

1 Modele

2 Vue

3 Controleur

4 M-V-C 2

DIABY Kalilou Cours Tutoriel JAVA

Page 140: Tutoriel java

Design Pattern

1 M-V-C : Modele Vue Controleur

1 Modele

2 Vue

3 Controleur

4 M-V-C 2

DIABY Kalilou Cours Tutoriel JAVA

Page 141: Tutoriel java

Design Pattern

1

2 M-V-C : Modele Vue Controleur

Dans ce type d’architecture, la vue correspond a l’ IHM:InterfaceHomme Machine, pour le client (l’utilisateur final). Le controleur,tout en respectant notre schema, est notre classe beans qui estcharge d’effectuer d’ eventuelles modifications et actions sur nosdifferents champs ; elle controle le modele.Le modele, ici represente les differentes classes a partir desquels lebean sera utilise ; c’est a dire la classe qui utilisera le bean afind’acceder a ses differents champs et methodes

DIABY Kalilou Cours Tutoriel JAVA

Page 142: Tutoriel java

Design Pattern

1 Modele

Le modele est en general l’element qui permettra de definir tous lesobjets que nous auront a manipuler dans notre applicationstructure en M-V-C. C’est en generale une classe en JAVA.Comme additif, dans les applications Java Entreprise Edition(JEE), c’est notre classe JAVABEAN.

DIABY Kalilou Cours Tutoriel JAVA

Page 143: Tutoriel java

Design Pattern

1 Vue

La vue est et represente notre Interface Homme Machine (IHM).Pour ce qui est de JAVA, cette partie se gere grace au graphisme enutilisant le JAVA SWING, AWT, qui se trouve aujourd’hui obsoletedu fait que assez de framework existe et permettent de creer cettevue tout en se chargeant de generer le code qui y va avec. Pour cefaire, on dispose d’outils tels que Netbeans, JDeveloppers, ...Dans le cadre d’une application web JEE, la vue peut etrerepresente par une Java Server Pages (JSP).NB : Une JSP est une page HTML capable de contenir du codeJAVA.

DIABY Kalilou Cours Tutoriel JAVA

Page 144: Tutoriel java

Design Pattern

1 Controleur

Le controleur est la classe a partir de laquelle tous nos traitementsseront effectues. Le controleur agit sur le modele en avisant a toutmoment la vue, permettant une gestion plus simple, securise etstructure de notre programme.Dans le cadre d’une application web JEE, elle represente les servletqui effectuerons les differents traitements, tout en informant notreJSP.NB : Une servlet est classe JAVA qui herite de classe HttpServlet,au travers de laquelle existe des methodes doPost et doGetpermettant une interaction avec la (ou les) JSP.

DIABY Kalilou Cours Tutoriel JAVA

Page 145: Tutoriel java

Design Pattern

Exemple de Servletpublic class NewServlet extends HttpServlet {protected void processRequest(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException {}@Override protected void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException {processRequest(request, response); }@Override protected void doPost(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException {processRequest(request, response); }@Override public String getServletInfo() {return ”Short description”; }}

DIABY Kalilou Cours Tutoriel JAVA

Page 146: Tutoriel java

Design Pattern

1

2

3

4 M-V-C 2

Ce design pattern, M-V-C 2, ne possede qu’une seule classe appelleFront Control, qui va deleguer certains traitements specifique ad’autres classes, qu’on appelle les classes de Command.

DIABY Kalilou Cours Tutoriel JAVA

Page 147: Tutoriel java

Les Bases de donnees

1 Generalites

2 Java Database Connectivity

DIABY Kalilou Cours Tutoriel JAVA

Page 148: Tutoriel java

Les Bases de donnees

1 Generalites

2 Java Database Connectivity

DIABY Kalilou Cours Tutoriel JAVA

Page 149: Tutoriel java

Les Bases de donnees

Generalites

De nos jours, toute bon application se doit de conserverl’historique des taches effectues par l’utilisateur. Ceux ci, dans lebut de lui offrir un certain confort de par son utilisation(soft2 )tout en lui donnant l’envie de se reconnecter a votre application.Dans le but de palier a ce probleme, l’on a recours a une base dedonnees qui sert de stockage a nos differentes donnees que sont :- Informations personnelles utilisateurs- Informations et sauvegarde du log utilisateur et machine- etc, ...Cette base de donnee se gere grace a ce que l’on nomme unSysteme Gestion de Base de Donnee Relationnel (SGBD 3 ). Il enexiste aujourd’hui plusieurs types dont le SGBDR (R pourRelationnel) qui nous interesse dans ce tutoriel.

2Logiciel3Un logiciel de Gestion de Base de Donnees

DIABY Kalilou Cours Tutoriel JAVA

Page 150: Tutoriel java

Les Bases de donnees

Ce tutoriel n’etant axe sur la base de donnee, nous nous limiteronsa ce qui a ete dit, et pour plus de complement referer a internet debons documents s’y trouvent.La connexion a une base de donnes est devenue aujourd’hui, unetache que peut effectuer tout programmeur. Cette connexion setrouve simplifie de nos jours, vue la multitude de langages deprogrammations et de SGBD dont nous disposons.

DIABY Kalilou Cours Tutoriel JAVA

Page 151: Tutoriel java

Java Database Connectivity

Java Database Connectivity : Connexion avec les bases de donnees

La connexion a une base de donnees en JAVA, ce fait via uncertain nombre d’outils que sont un driver 4, de methodes depreparations a la connexion, de quelques requetes SQL ou NOSQL.

4Un pilote qui a pour but de permettre l’acces d’un ou des services a un unautre service qui l’installe.

DIABY Kalilou Cours Tutoriel JAVA

Page 152: Tutoriel java

Java Database Connectivity

1 Telechargements et installation du driver

2 Methodes de connexions ‘a une base de donnes

DIABY Kalilou Cours Tutoriel JAVA

Page 153: Tutoriel java

Java Database Connectivity

1 Telechargements et installation du driver

2 Methodes de connexions ‘a une base de donnes

DIABY Kalilou Cours Tutoriel JAVA

Page 154: Tutoriel java

Java Database Connectivity

1 Telechargements et installation du driver

1 Telechargements

2 Installation du driver

DIABY Kalilou Cours Tutoriel JAVA

Page 155: Tutoriel java

Java Database Connectivity

1 Telechargements et installation du driver

1 Telechargements

2 Installation du driver

DIABY Kalilou Cours Tutoriel JAVA

Page 156: Tutoriel java

Java Database Connectivity

Telechargements et installation du driver

Pour ce faire, il nous faut utiliser un driver. Comment yprocede-t-on?

DIABY Kalilou Cours Tutoriel JAVA

Page 157: Tutoriel java

Java Database Connectivity

1 Telechargements

Pour le telechargement du driver, il est a noter que bon nombre deSGBD nous est offert. Toutefois, pas de panique, car le choix duSGBD est fonction de l’utilisation de notre base de donnees, dupublic cible vers qui elle est orientee et aussi de nos moyens.Pour notre tutoriel, nous utiliserons MySQL. Sans tarder,telechargeons le pilote necessaire a cela en vue d’effectuer laconnexion.Dans notre cas, le driver a chercher est: mysql-connector-java5

Lien de telechargements :Personnellement, moi j’ai le mysql-connector-java-5.1.32NB : Je vous conseillerai de vous referer a Google en vue detrouver la version la plus recente de votre driver

5Je l’ai fait expres d’enlever la version afin que vous puissiez recuperez laderniere version du driver souhaitee

DIABY Kalilou Cours Tutoriel JAVA

Page 158: Tutoriel java

Java Database Connectivity

1

2 Installation driver : MySQL

Pour l’installation, sachez tout simplement une chose; ce n’en estpas une. Car, il nous suffit juste de charger la librairie de ce driverdans notre EDI6 et l’integrer a notre projet. Cela je pense que vousserez a mesure de le faire.

6Integrate Developement EnvironnementDIABY Kalilou Cours Tutoriel JAVA

Page 159: Tutoriel java

Java Database Connectivity

1

2 Methodes de connexions a une base de donnees

1 Etablissement de la connexion

2 Erreur a ne jamais commettre avec les bases de donnees

3 Methodes de connexions

DIABY Kalilou Cours Tutoriel JAVA

Page 160: Tutoriel java

Java Database Connectivity

1

2 Methodes de connexions a une base de donnees

1 Etablissement de la connexion

2 Erreur a ne jamais commettre avec les bases de donnees

3 Methodes de connexions

DIABY Kalilou Cours Tutoriel JAVA

Page 161: Tutoriel java

Java Database Connectivity

1

2 Methodes de connexions a une base de donnees

1 Etablissement de la connexion

2 Erreur a ne jamais commettre avec les bases de donnees

3 Methodes de connexions

DIABY Kalilou Cours Tutoriel JAVA

Page 162: Tutoriel java

Java Database Connectivity

Java Database Connectivity

Nous voici enfin arrive a l’instant de verite, celle de la connexion etdes traitements (requetes) a effectuer.Avant tout sachez que tous les traitements que nous ferons neseront possible que par la librairie java.sql.*; qui se trouve inclusdans JAVA.

DIABY Kalilou Cours Tutoriel JAVA

Page 163: Tutoriel java

Java Database Connectivity

1 Etablissement de la connexion

Creons a present un nouvel objet pour la connexion a notre base dedonnees. Pour cela, nous utiliserons l’objet Connection.La syntaxe serait : Connection ObjetDeConnection;

DIABY Kalilou Cours Tutoriel JAVA

Page 164: Tutoriel java

Java Database Connectivity

1

2 Erreur a ne jamais commettre avec les base de donnees

Dans bon nombre de cas, les bases de donnes servent a stocker lesinformations sensibles sur des personnes (morales et physiques).D’un tel point de vue, il est deconseille de laisser une connexion ala base donnes ouverte trop longtemps afin de reduire le hacking7

de nos data.Pour cela, nous aurons recours au try, catch et finally8.Dans ce cas, il n’y aura pas d’exemple precis car d’un point de vuepersonnelle le JDBC s’utilise beaucoup avec le JEE9, et ceux memes’il existe dans les JSE10.

7Piratage de nos donnees8Vous comprendrez a ce niveau l’importance de ce finally9Java Entreprise Edition

10Java Standard EditionDIABY Kalilou Cours Tutoriel JAVA

Page 165: Tutoriel java

Java Database Connectivity

1

2

3 Methodes de connexions

La connexion s’etablit grace a la methode Class.forName() dumoins si l’on se base sur la norme 1.0 du JDBC.

DIABY Kalilou Cours Tutoriel JAVA