La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

R APPELS SUR LA P ROGRAMMATION JAVA NSY208 / 2010-2011.

Présentations similaires


Présentation au sujet: "R APPELS SUR LA P ROGRAMMATION JAVA NSY208 / 2010-2011."— Transcription de la présentation:

1 R APPELS SUR LA P ROGRAMMATION JAVA NSY208 /

2 Plan (1) Concepts Programmation OO Fondamentaux de Java Interfaces et Classes Exceptions Collections et généricité Programmation événementielle Assertions et JUNIT 2DJBEL

3 Plan (2) pour le XML et sérialisation Programmation concurrentielle Introspection Persistance RMI Programmation native 3DJBEL- 2010

4 Concepts de la programmation Orientée Objet 4DJBEL- 2010

5 Concepts POO (1) Abstraction – Toute entité est un objet Encapsulation – Modéliser au sein dune seule entité Class, les propriétés et le comportement de lobjet Héritage – étendre une classe existante pour la spécialiser – modélisation de la relation « est » 5DJBEL- 2010

6 Concepts POO (2) Polymorphisme : – Possibilité pour un objet de modéliser plusieurs comportements Surcharge et redéfinition – une même méthode avec différents paramètres – adapter une méthode spécifiquement Agrégation et Composition – regrouper et structurer un ensemble de classes 6DJBEL- 2010

7 Concepts POO (3) Les polygones 7DJBEL- 2010

8 Fondamentaux de Java 8DJBEL- 2010

9 Fondamentaux de Java (1) Cest un langage interprété – Les programmes sont compilés dans un code intermédiaire (byte code) qui sexécute sur une machine virtuelle : JVM Utilisation dun Garbage Collector Langage entièrement à base dobjets – Exception des types primitifs (int, boolean, char…) : Boxing – Une hiérarchie arborescente : toutes les classes héritent dune classe de base Object – Un objet une instance de la classe 9DJBEL- 2010

10 Fondamentaux de Java (2) Une syntaxe similaire à C ou C++ – Toutes les instructions sont définies dans une classe Des outils pour compiler : – JDK, Eclipse, Netbeans, BlueJ Un environnement dexécution (JRE) Un seul point dentrée par application : static void main Organisation des classes sous la forme de paquetages 10DJBEL- 2010

11 Fondamentaux de Java (3) MéthodeDescription boolean equals (Object obj)Déterminer si deux objets sont égaux void finalize()Appelée par le GC pour libérer les ressources int hashCode()Renvoie le code hash de lobjet final void notify()Réveille un objet en attente de verrou final void notifyAll()Réveille tous les objets en attente final void wait()Suspendre le thread en cours String toString()Renvoie la forme texte dun objet Une hiérarchie unique sur la base Object 11DJBEL- 2010

12 Fondamentaux de Java (4) Déclaration : [portée] [static] [final] type nom Portée : 12DJBEL VisibilitéPublicProtectedDefaultPrivate Depuis la même classeOui Depuis les autres classes du paquetage Oui Non Depuis une sous-classe du même paquetage Oui Non Depuis une sous-classe ou une classe définie dans un paquetage externe OuiNon

13 Fondamentaux de Java (5) 13DJBEL- 2010

14 Interface et Classe 14DJBEL- 2010

15 Interface et classe (1) Interface « contrat», non instanciée ?: – Déclaration de méthodes pour le comportement – Doit être implémentée : implements – Etendre (extends) une ou plusieurs interfaces Class abstraite (abstract), non instanciée ? : – Peut contenir des méthodes abstraites ou non – Peut partiellement implémenter une interface – Ne peut pas être déclarée final – Méthodes abstraites ne doivent pas être privées 15DJBEL- 2010

16 Interface et classe (2) Classe concrète – Doit implémenter toutes les méthodes abstraites – Peut être interne ou anonyme – Hérite (extends) dune seule et une seule classe, « Héritage » multiple par le biais dinterfaces – Une classe final ne peut pas être étendue – Opérateur this pointe vers linstance courante en exécution – Un Constructeur par défaut, sur-chargeable – Peut redéfinir ou surcharger une méthode de la classe de base, elle na pas accès aux membres privés de la base, super pour appeler le constructeur de la super classe 16DJBEL- 2010

17 Interface et Classe (3) 17DJBEL- 2010

18 Interface et Classe (4) Les membres de linterface sont par défaut public Une classe abstraite peut partiellement implémenter une interface Exemple de surcharge de la fonction somme DJBEL

19 Interface et Classe (5) La classe concrète doit implémenter toutes les méthodes qui sont encore abstraites DJBEL

20 Interface et Classe (6) Classe interne et classe anonyme DJBEL

21 Exceptions 21DJBEL- 2010

22 Exceptions (1) Exception : occurrence dun évènement qui interrompt lexécution normale du programme – Anomalie système :le fichier est inexistant – Bug programmeur : utilisation dun objet null A loccurrence de lévénement une exception est levée (thrown) Elle doit être attrapé (catch) par le processus appelant (handler) Il y a au moins un handler celui du main 22DJBEL- 2010

23 Exceptions (2) 23DJBEL Une hiérarchie dexceptions : – Erreurs, on ne peut pas les intercepter – Exceptions qui sont recouvrable

24 Exceptions (3) 24DJBEL Encadrer le code « suspect » par un block try Possibilité dutiliser autant de blocks catch que dexception quon veut attraper Utiliser un block finally pour libérer les ressources Finally peut générer lui-même des erreurs

25 Collection et Généricité 25DJBEL- 2010

26 Collection et généricité (1) Une collection est un container qui a pour but de regrouper un ensemble dobjets Possibilité de manipuler cet ensemble comme formant un tout Elle expose un comportement : – Ajouter un élément – Retirer un élément – Connaitre sa taille – Accéder directement à un élément – Itérer 26DJBEL- 2010

27 Collection et généricité (2) 27DJBEL ClassMapSetListOrdreTri HashMapOuiNon HashtableOuiNon TreeMapOui Naturel LinkedHashMapOuiInsertionNon HashSetOuiNon TreeSetOui Naturel LinkedHashSetOuiInsertion ArrayListOuiIndexNon VectorOuiIndexNon LinkedListOuiIndexNon

28 Collection et généricité (3) DJBEL

29 Collection et généricité (4) DJBEL

30 Collection et généricité (5) 30DJBEL- 2010

31 Programmation événementielle 31DJBEL- 2010

32 Programmation événementielle (1) 32DJBEL

33 Programmation événementielle (2) EventObject : véhicule le contexte dun évènement Des éléments actifs qui réagissent à une action utilisateur Le modèle qui alerte sur son changement détat ActionListener, PropertyChangeListener qui interceptent les événements Des Panels qui se rafraichissent (repaint) 33DJBEL- 2010

34 Programmation événementielle (3) 34DJBEL- 2010

35 Programmation événementielle (4) 35DJBEL- 2010

36 Programmation événementielle (5) 36DJBEL- 2010


Télécharger ppt "R APPELS SUR LA P ROGRAMMATION JAVA NSY208 / 2010-2011."

Présentations similaires


Annonces Google