Ce document décrit la programmation orientée objet et présente des exercices pratiques sur la modélisation UML, la déclaration et gestion de classes, l'héritage, les événements et les interfaces en ABAP.
0 évaluation0% ont trouvé ce document utile (0 vote)
180 vues9 pages
Ce document décrit la programmation orientée objet et présente des exercices pratiques sur la modélisation UML, la déclaration et gestion de classes, l'héritage, les événements et les interfaces en ABAP.
Ce document décrit la programmation orientée objet et présente des exercices pratiques sur la modélisation UML, la déclaration et gestion de classes, l'héritage, les événements et les interfaces en ABAP.
Ce document décrit la programmation orientée objet et présente des exercices pratiques sur la modélisation UML, la déclaration et gestion de classes, l'héritage, les événements et les interfaces en ABAP.
Téléchargez comme PPTX, PDF, TXT ou lisez en ligne sur Scribd
Télécharger au format pptx, pdf ou txt
Vous êtes sur la page 1sur 9
La programmation orientée objet
Objectifs
A l’issue de ce chapitre, vous devez être en mesure de :
• Expliquer la différence entre la programmation procédurale et la programmation orientée objet • Lister les avantages de la programmation orientée objet Projet SIGIF SAP NetWeaver Programming – ABAP Objects FORMATION DES K-USERS, MINISTERE DES FINANCES, DAKAR, 10 avril 2017 Introduction à l’ABAP OBJECT • Exercices pratiques Exercices pratiques Modélisation UML • Le but est de modéliser certaines classes clé d’une compagnie aérienne : 1. Votre diagramme de classe doit contenir les classes suivantes
2. Rajouter les attributs et les méthodes qui vous semblent appropriés
3. Définir les relations entre les classes 4. Choisir les cardinalités qui vous semblent logiques Exercices pratiques Modélisation UML • Solution Exercices pratiques Eléments de syntaxe – Déclaration de classes • Tache 1 • Créer le programme suivant : ZBC401_##_MAIN (En remplaçant ## par votre trigramme) Tache 2 • Dans votre programme déclarer la classe suivante : LCL_AIRPLANE • Définissez deux attributs privées • MV_NAME type STRING • MV_PLANETYPE type SAPLANE-PLANETYPE • Un attribut statique • MV_N_O_AIRPLANES type I • Définir le constructeur de telle sorte qu’à chaque création d’objet, l’attribut MV_N_O_AIRPLANES soit incrémenté. • Définir la méthode publique SET_ATTRIBUTES qui permet de donner des valeurs aux attributs privés • La signature de la méthode doit contenir deux paramètres d’import correspondants aux attributs privés de la classe • Implémentez la méthode de telle sorte que les deux attributs soient modifiés en même temps • Définir la méthode publique DISPLAY_ATTRIBUTES pour afficher les valeurs des attributs. • Définir la méthode statique DISPLAY_N_O_AIRPLANES qui affiche l’attribut statique MV_N_O_AIRPLANES Exercices pratiques Eléments de syntaxe – Gestion des objets • Tache 1 • Créer un variable de référence au type de classe LCL_AIRPLANE • Créer une table interne contenant des lignes de type référence à la classe LCL_AIRPLANE Tache 2 : Créer un section START-OF-SELECTION. • Créer plusieurs instances de la classe LCL_AIRPLANE • Après chaque création rajouter l’objet à la table interne (Append) Exercices pratiques Eléments de syntaxe – Héritage et évènements • Tache 1 • Créer des classes LCL_PASSENGER et LCL_CARGO qui héritent de la classe LCL_AIRPLANE. • Redéfinir la méthode DISPLAY_ATTRIBUTES de la manière suivante: • Appel de la méthode de la super classe • Affichage des attributs spécifiques aux sous classes • Créer les méthodes de sous classe (Get_cargo et GET passengers) Tache 2 : • Créer la classe LCL_CARRIER • Implémenter les méthodes et attributs en accord avec le diagramme de classes Tache 3 : • Définir l’événement public AIRPLANE_CREATED dans la classe LCL_AIRPLANE • Générer l’événement depuis le constructeur. • Dans la classe LCL_CARRIER créer la méthode ON_AIRPLANE_CREATED en tant que gestionnaire de l’événement AIRPLANE_CREATED • Enregistrer la méthode gestionnaire de l’événement pour toutes les instances Eléments de syntaxe – Interfaces • Tache 1 • Créer les classes ZCL_LOCATION_<TRI> et ZCL_HOTEL_<TRI> en implémentant l’interface ZIF_SERVICE • Implémentez les méthodes de l’interface de la manière suivante (Dans une classe globale): • Méthode de création : Prend comme paramètre un numéro d réservation et modifie l’attribut réservation avec ce numéro • Méthode de modification : Modifie la valeur de l’attribut (Teste s’il n’est pas vide avant, si c’est le cas remonter une exception) • Méthode de suppression : Vide l’attribut réservation. • Méthode d’affichage : Affiche la valeur de la réservation sur l’écran