0% ont trouvé ce document utile (0 vote)
57 vues13 pages

Collections et Exceptions Java

Transféré par

semlalibrahim539
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)
57 vues13 pages

Collections et Exceptions Java

Transféré par

semlalibrahim539
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

06/11/2019

JAVA : NOTIONS
AVANCÉES
Collections, Exceptions

Pr. Sarra ROUBI


LP Génie Informatique : S3

COLLECTIONS EN
JAVA
Syntaxe, usage, types

1
06/11/2019

Collection en Java : concept


■ Dans les programmes Java, il est parfois utile de définir des
classes paramétrées par un type de données (ou une classe).

■ Ceci parfois dans le cas où on traite des donnés élémentaires


liées entre elles (départements d’une entreprise, employés d’un
département, etc)

■ Pour ceci, , Java offre les collections

Collection en Java : concept


■ Une collection est un objet qui permet d’organiser, manipuler et
gérer un groupe de données multiples

■ Il s’agit d’interfaces de collection définit en langage Java

■ La racine de la hiérarchie est l’interface Collection ou Map

2
06/11/2019

Collection en Java : concept

Classes concrètes

Table de Tableau
Arbre binaire Liste chaînée
hachage variable

Set<E> HashSet<E> TreeSet<E>

LinkedList
Interfaces List<E> ArrayList<E>
<E>
TreeMap
Map<E> HashMap<E>
<K,V>

Collection en Java : List


■ Les objets appartenant à la catégorie List sont, pour simplifier, des
tableaux extensibles à volonté.

■ On y trouve les objets Vector, LinkedList et ArrayList.

3
06/11/2019

Collection en Java : List


■ LinkedList
– Une liste chaînée (LinkedList en anglais) est une liste dont chaque
élément est lié aux éléments adjacents par une référence à ces
derniers.

Collection en Java : List


■ LinkedList

4
06/11/2019

Collection en Java : List


■ ArrayList
– un objet bien pratique. ArrayList est un de ces objets qui n'ont pas de taille
limite et qui, en plus, acceptent n'importe quel type de données, y
compris null !.
■ Il existe tout un panel de méthodes fournies avec cet objet :
– add() permet d'ajouter un élément ;
– get(int index) retourne l'élément à l'indice demandé ;
– remove(int index) efface l'entrée à l'indice demandé ;
– isEmpty() renvoie « vrai » si l'objet est vide ;
– removeAll() efface tout le contenu de l'objet ;
– contains(Object element) retourne « vrai » si l'élément passé en paramètre est dans
l'ArrayList.

Collection en Java : Map


■ Une collection de type Map est une collection qui fonctionne avec
un couple clé - valeur.

■ On y trouve les objets Hashtable, HashMap, TreeMap …

■ La clé, qui sert à identifier une entrée dans la collection, est


unique. La valeur, au contraire, peut être associée à plusieurs clés.

5
06/11/2019

Collection en Java : Map


■ Ces objets ont comme point faible majeur leur rapport conflictuel
avec la taille des données à stocker.

■ En effet, plus vous aurez de valeurs à mettre dans un objet Map,


plus celles-ci seront lentes et lourdes : logique, puisque par
rapport aux autres collections, il stocke une donnée
supplémentaire par enregistrement..

LES EXÉPTIONS EN
JAVA
Principe, Syntaxe, usage

6
06/11/2019

Les exceptions en Java : Principe


■ Lorsqu’on écrit un programme, plusieurs erreurs peuvent survenir.

■ Les erreurs syntaxiques sont détectées à la compilation. Par


contre les erreurs sémantiques surviennent uniquement à
l'exécution.

■ Il faut les traiter par un processus à part.

Les exceptions en Java : Principe

■ Une exception est un objet Java

■ A la réception d'une exception, le code est arrêté, et Java


recherche en local puis dans la liste des appelants la façon de
traiter cette exception

■ Il existe plusieurs types d’exception :

7
06/11/2019

Les exceptions en Java : Principe


diviser un nombre par 0 ArithmeticException
envoyer un message sur une
NullPointerException
référence null

accéder à des cases d’un ArrayIndexOutOfBoundsException


tableau en dehors  des indices,

Comparer  des objets de


ClassCastException
classes différentes

etc. etc.

Les exceptions en Java : Principe

■ D'après le message affiché dans la console, le nom de l'exception


qui a été déclenchée est ArithmeticException.

8
06/11/2019

Les exceptions en Java : Mécanisme

■ Les mots clés try - catch permettent d'intercepter et de traiter une


exception

■ Le mot clé throws permet de lister les exceptions à intercepter lors


de l'appel d'une méthode

■ Le mot clé throw permet de lever une exception

■ PS : L'utilisateur peut créer ses propres exceptions

Les exceptions en Java : Mécanisme

■ Une exception levée et qui n’est pas attrapée provoque la fin du


programme, en indiquant à l ’utilisateur la pile de méthodes
traversées par l ’exception:
– pas de clause try...catch
– une méthode susceptible de lancer une exception sans l ’attraper
doit l’indiquer dans son entête : mot clé throws

9
06/11/2019

Les exceptions en Java : Mécanisme

■ Le couple try - catch permet de surveiller une portion de code,


d'intercepter et de traiter les exceptions en Java.
■ Le mot clé try délimite la portion de code à surveiller
■ Le mot clé catch permet de capturer et de traiter une exception
■ Dans un try peuvent survenir plusieurs exceptions. Chacune d'elle
est traitée par un catch approprié

Les exceptions en Java : Mécanisme


Principe Syntaxe
try {
//  code  pouvant  lever  une
//exception
■ Syntaxe complète d'une …
gestion d'exception }  catch  ( MyExceptiontype e)  {
//  code  a  exécuter  si
//MyExceptiontype est  
levée

}  catch  ( Exception  e)  {
[Link]([Link]())

}  finally {
//  code  toujours  exécuté
}

10
06/11/2019

Les exceptions en Java : Mécanisme

Les exceptions en Java : Mécanisme


■ Nous initialisons deux variables de type int, l'une à 0 et l'autre à un
nombre quelconque.
■ Nous isolons le code susceptible de lever une exception
: [Link](j/i);.
■ Une exception de type ArithmeticException est levée lorsque le
programme atteint cette ligne.
■ Notre bloc catch contient justement un objet de
type ArithmeticException en paramètre. Nous l'avons appelé e.
■ L'exception étant capturée, l'instruction du bloc catch s'exécute !
■ Notre message d'erreur personnalisé s'affiche alors à l'écran

11
06/11/2019

Les exceptions en Java : Mécanisme


■ Le catch : Il permet de connaître le type d'exception qui doit être
capturé.

■ Et l'objet — ici, e — peut servir à préciser notre message grâce à


l'appel de la méthode getMessage() :

Les exceptions en Java : Personnalisation


■ Reprenons l’exemple : Ville / Capitale
■ La procédure pour faire ce tour de force est un peu particulière. En
effet, nous devons :
– créer une classe héritant de la classe Exception :
NombreHabitantException (par convention, les exceptions ont un
nom se terminant par « Exception ») ;
– renvoyer l'exception levée à notre
classe NombreHabitantException ;
– ensuite, gérer celle-ci dans notre
classe NombreHabitantException.

12
06/11/2019

Les exceptions en Java : Personnalisation

13

Vous aimerez peut-être aussi