L2 Enseignante : Mme I.JAOUANI Page 1 TABLE Des MATIERES 1. Chapitre1 : De la p
L2 Enseignante : Mme I.JAOUANI Page 1 TABLE Des MATIERES 1. Chapitre1 : De la programmation procédurale à la programmation orientée objet ......... 9 1.1. Premiers langages ................................................................................................. 9 1.2 Approche procédurale/ modulaire ............................................................................... 9 1.3 Approche orientée objet.............................................................................................. 9 2. Terminologie et concepts de la programmation orientée objet .................................... 10 2.1. Notion d’objet ..................................................................................................... 10 2.2. Classe ................................................................................................................. 10 2.3. Instanciation ....................................................................................................... 11 2.4. Constructeur et destructeur .................................................................................. 11 2.5. Encapsulation ..................................................................................................... 11 2.6. Héritage .............................................................................................................. 11 2.7. Polymorphisme ................................................................................................... 12 3. Langages orientés objets ............................................................................................ 12 Chapitre 2 : Syntaxe et éléments de base en java ................................................................... 14 1. Introduction ............................................................................................................... 15 2. Structure de base d’un programme en Java ................................................................. 15 3. Les identificateurs ...................................................................................................... 16 4. Les variables .............................................................................................................. 17 4.1 Types de variables ................................................................................................... 17 4.2. La déclaration des variables .................................................................................... 19 4.3. L’affectation des variables ....................................................................................... 20 5. Les structures de contrôles ......................................................................................... 21 6. Les tableaux ............................................................................................................... 22 6.1. Propriétés des tableaux ........................................................................................... 22 6.2. Déclaration et allocation d’un tableau ...................................................................... 23 6.3. Utilisation d’un tableau .......................................................................................... 24 6.4. Initialisation d’un tableau ....................................................................................... 24 6.5. Parcours d’un tableau ............................................................................................. 25 6.6. Tableau multidimensionnel..................................................................................... 26 6.7 Passer des tableaux à des méthodes .......................................................................... 26 L2 Enseignante : Mme I.JAOUANI Page 2 7. Contrôle des acquis....................................................................................................... 27 Chapitre 3 : Classes & Objets ............................................................................................... 31 1. Introduction ............................................................................................................... 32 2. Classes et objets ......................................................................................................... 32 2.1 Déclaration d’une classe ........................................................................................... 32 2.2 Création d’un objet d’une classe : l’opérateur new ................................................... 32 3. Les variables .............................................................................................................. 33 3.1 Les variables d’objet (ou d’instance de classe).......................................................... 33 3.2 Les variables de classe .............................................................................................. 34 4. Les méthodes ............................................................................................................. 35 6.1 Utilisation des méthodes ........................................................................................... 35 6.2 Les méthodes de classe ............................................................................................. 36 6.3 surcharge des méthodes ........................................................................................... 37 6.4 Le passage des paramètres ........................................................................................ 38 6.5 Une méthode particulière : la méthode « main » ...................................................... 38 7. Les constructeurs et le destructeur .................................................................................. 39 7.1. Les constructeurs ..................................................................................................... 39 7.2 Le destructeur ........................................................................................................... 41 7.3 Le ramasse miettes (Garbage Collector) .................................................................. 42 8. les modificateurs d’accès ............................................................................................... 42 8.1 Les mots clés qui gèrent la visibilité des entités ........................................................ 42 8.2 Le mot clé final ....................................................................................................... 43 10. Référence aux objets .............................................................................................. 45 13. Contrôle des acquis ..................................................................................................... 46 I. Exercice 2 : Une classe pour modéliser un vecteur ......................................................... 47 Leçon N°4 : Héritage ............................................................................................................ 50 1. Introduction ................................................................................................................... 51 2. Sous-classes et Super-classes ......................................................................................... 52 2.1 Définition de sous-classe .......................................................................................... 52 2.2 L'arbre de toutes les classes ...................................................................................... 52 3. Redéfinition des méthodes ............................................................................................. 53 3.1 Surcharge et masquage ............................................................................................. 53 3.2 Redéfinition des méthodes ........................................................................................ 54 L2 Enseignante : Mme I.JAOUANI Page 3 3.3 Héritage et constructeurs .......................................................................................... 55 5. Les conversions de type ................................................................................................. 56 6. L’héritage multiple ........................................................................................................ 57 7. Résumé : Avantages de l’héritage .................................................................................. 57 8. Contrôle des acquis....................................................................................................... 57 Exercice 1 - Plaque d'immatriculation ............................................................................ 58 Exercice 2 - La classe Voiture ........................................................................................ 58 Exercice 3 - Généralisation à une classe Vehicule .......................................................... 58 Chapitre 5 : Classes abstraites et interfaces ........................................................................... 61 1. Classes abstraites ........................................................................................................... 62 2. Interfaces ....................................................................................................................... 65 2.1. Définition ............................................................................................................... 65 2.2 Utilité des interfaces ................................................................................................ 68 2.3 Règles d’implémentation d’une interface ................................................................. 68 Chapitre 6 : Le polymorphisme ............................................................................................. 71 1. Introduction .................................................................................................................. 72 2. Les bases du polymorphisme ......................................................................................... 72 3. Généralisation à plusieurs classes .................................................................................. 76 4. Redéfinition et surdéfinition .......................................................................................... 77 5. Les règles du polymorphisme en Java ............................................................................ 78 6. Contrôle des acquis....................................................................................................... 79 Chapitre 7 : Gestion des exceptions ...................................................................................... 85 1. Introduction ................................................................................................................... 86 2. Les mots clés try, catch et finally ................................................................................... 87 3. La classe Throwable ...................................................................................................... 89 4. Les classes Exception, RunTimeException et Error ...................................................... 91 5. Les exceptions personnalisées........................................................................................ 91 7. L'utilisation des exceptions ............................................................................................ 93 7. Contrôle des acquis....................................................................................................... 94 L2 Enseignante : Mme I.JAOUANI Page 4 LISTE DES FIGURES Figure 1 : Types des variables JAVA ............................................................................................................... 17 Figure 2:Schématisation des classes Article et boisson sans héritage ................................................................ 51 Figure 3:Schématisation des classes Article et boisson avec héritage ............................................................... 51 Figure 4: Exemple de classe Abstraite ............................................................................................................. 62 Figure 5 : Hiérarchie des classes d’exception java ............................................................................................ 91 L2 Enseignante : Mme I.JAOUANI Page 5 LISTE DES TABLEAUX Tableau 1: Types des varaiables JAVA ................................................................................. 18 Tableau 2 : Affectation des variables .................................................................................... 20 Tableau 3 : Les structures de contrôles ................................................................................. 22 Tableau 4 : les modificateurs d’accès .................................................................................... 43 Tableau 5 : Constructeurs de la classe Throwable ................................................................. 89 Tableau 6 : Méthodes de la classe Throwable ....................................................................... 90 L2 Enseignante : Mme I.JAOUANI Page 6 FICHE PEDAGOGIQUE Programmation orientée Objet OBJECTIFS Comprendre les concepts de la programmation orientée objet Implémenter des classes d’objets Créer des classes avec le principe d’héritage PRE-REQUIS Algorithmique Atelier Programmation 1 Atelier Programmation 2 POPULATION Profil : Technologie de l’informatique Spécialité : Tronc commun Niveau : Semestre 3 DEROULEMENT Durée : 15 semaines Volume horaire : 3 heures Cours/semaine EVALUATION Interrogation orale Un devoir d’une heure Examen final écrit de 2 heures MOYENS PEDAGOGIQUES Exposé informel Tableau Support du cours Exercices d’application L2 Enseignante : Mme I.JAOUANI Page 7 Chapitre I InTRODUCTION A LAPROGRAMMATION ORIentée objet L2 Enseignante : Mme I.JAOUANI Page 8 Chapitre 1 : Introduction à la programmation orientée objet Le but de cette première leçon est d’introduire la programmation orientée objet et les langages orientées objets Objectifs Sensibiliser l’étudiant aux avantages de la programmation orientée objet. Se familiariser avec les termes de la programmation orientée objet Découvrir les principaux concepts de la programmation orientée objet Durée : 1 h 30mn Algorithmique et structures de données 1 Atelier de programmation 1 Vue d’ensemble Pré-requis : L2 Enseignante : Mme I.JAOUANI Page 9 Un programme est composé d’un ensemble de structures de données et d’un ensemble de traitements. L’approche de conception et de programmation a évolué au fil du temps: 1.1. Premiers langages Premiers langages : suite d’instructions qui s’exécutent de façon linéaire (l’une après l’autre) Aucune modularité Pas de possibilité de réutilisation 1.2 Approche procédurale/ modulaire Le programme correspond à un ensemble de fonctions qui s’appellent entre elles Modularité des programmes Décomposition possible d’un problème complexe en plusieurs sous problèmes Maintenance plus facile Dissociation des données des fonctions qui les manipulent Pas de moyen / technique de spécialisation des fonctions existantes Nécessité de raisonner de manière hiérarchique, centralisée et temporelle. 1.3 Approche orientée objet La modélisation objet crée une représentation informatique des éléments du monde réel indépendamment de l’implémentation. Extensibilité / évolutivité Fiabilité : conservation de l’intégrité des données Les données et les fonctions sont éclatées (vision décentralisée et nontemporelle) Réutilisation Abstraction : analyse du problème indépendamment du codage 1. De la programmation procédurale à la programmation orientée objet L2 Enseignante : Mme I.JAOUANI Page 10 2. Terminologie et concepts de la programmation orientée objet 2.1. Notion d’objet Un objet représente une entité du monde réel. Il est caractérisé par un état et un comportement. L’état d’un objet est l’ensemble des données qui le décrivent qu’on appelle attributs. Le comportement décrit les traitements associés à l’objet qu’on appelle méthodes. Un objet regroupe les données et les moyens de traitement de ces données (fonctions membres / méthodes) Exemples : Objet 1 : Peugeot 206 Couleur : rouge Nombre de chevaux : 5 Marque : Peugeot Num Immatriculation : 87654321 Nombre de roues : 4 Vitesse maximale 260 Démarrer Accélérer Objet 2 : Ford Fiesta Couleur : vert Nombre de chevaux : 4 Marque : Ford Num Immatriculation : 12396578 Nombre de roues : 4 Vitesse maximale : 220 Démarrer Accélérer 2.2. Classe Une classe d’objets est une description d’un ensemble d’objets ayant un état commun et disposant des mêmes comportements. Une classe représente un type abstrait de données à partir duquel il est possible de créer différents objets. Exemple2 : Classe versus Objet Classe Objet Obj : L2 Enseignante : Mme I.JAOUANI Page 11 Voiture char marque [10]; char couleur [10]; int NumMatr; Void Démarrer() ; Void Accélérer() ; Marque = ’’Peugeot’’ Couleur = ’’rouge’’ NumMatr = 95841 2.3. Instanciation Une classe représente un modèle d’objet à partir duquel on peut avoir plusieurs exemplaires (objets). Ces objets sont appelés des instances de classe. La création d’une classe s’appelle instanciation. 2.4. Constructeur et destructeur Lors de la déclaration d’une instance de classe, c’est à dire lorsqu’un objet est créé, une méthode (fonction membre) est appelée automatiquement. Cette méthode s’appelle constructeur et a pour rôle d’initialiser l’objet de la classe en question. Inversement, une méthode appelée destructeur est appelée automatiquement lorsque l’instance est hors de portée (fin du programme). 2.5. Encapsulation Mécanisme qui permet de conserver l’intégrité des données en empêchant l’accès aux attributs par un moyen autre que les méthodes proposées : c’est le masquage de certains éléments de la classe. On peut distinguer dans une classe, principalement, 2 parties : Partie publique : uploads/s1/courspoo-2020.pdf
Documents similaires










-
36
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Mar 26, 2021
- Catégorie Administration
- Langue French
- Taille du fichier 1.3142MB