Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
Publié parPascal Durieux Modifié depuis plus de 9 années
1
Cours No8 La programmation à l’aide d’objets
2
Contenu 1. Terminologie objet 2. Classe vs Objet 3. Création d’une classe 4. Déclaration d’une variable objet 5. Instanciation d’une classe 6. Création d’une collection d’objets
3
Classe Une classe est une sorte de gabarit (moule ou plan) à partir duquel les objets sont construits. Une classe comporte: des propriétés et des méthodes. Les propriétés correspondent à des variables et mémorisent l’état d’un objet à un instant donné. Elles peuvent être privées ou publiques. Toutefois, le principe de l’encapsulation requiert l’utilisation de propriétées privées. Les méthodes correspodent à des procédures Sub et function et décrivent les opérations que l’on peut effectuer sur l’objet. Les méthodes peuvent être publiques ou privées
4
Classe suite Un jeu de propriétés et de méthodes constitue une interface. En POOPE, les classes ont aussi des événements. Qu’une classe peut déclencher lorsque certaines conditions se trouvent réunis. Le programmeur peut alors prescrire l’action à entreprendre lorsque l’événement en question se produira.
5
Définir une classe On inserre un module de classe
6
Exercice Définir une classe Cproduit Utiliser cette classe dans un programme
7
Définir les propriétés Les propriétés sont définies en tant que variables locales privées Dim mPrix As Currency La procédure propriété Let permet d’affecter une valeur à une propriété La procédure propriété Get permet de lire l’état d’une propriété
8
Les propriétés suite Let permet de valider les propriétés Public Property Let Prix (NouvPrix As Currency) If (NouvPrix 100) Then mPrix = 0 MsgBox “Prix incorrect, mise à 0”,,”Erreuer” Else mPrix = NouvPrix EndIf Un Let sans Get est une propriété en écriture seulement. Un Get sans Let est une propriété en lecture seulement
9
Les propriétés suite Let permet de valider les propriétés Il est préférable de générer une erreur que l’interface utilisera
11
Définir un objet Dim X As New Nom_Classe L’objet est créé en mémoire lorsqu’on y réfère pour la première fois dans le code. Dim X As Nom_Classe Set X = New Nom_Classe Set X = Y, où Y est déjà défini.
12
Classe avec événement Dans la partie déclarative de la classe Public Event Nom_de_l_Événement Déclencher l’événement Quelque part dans l’une des méthodes ou propriétés Let ou Get, If.... Then RaiseEvent Nom_de_l_Événement End if
13
Coder l’événement Déclarer une variable objet ayant un événement Dim WithEvents mProd as CProduit2 Instancier la variable Set mProd = new CProduit2 Coder l’événement Sub NomObjet_Nom_de_l_Événement Code pour réagir à l’événement
14
Explorateur d’objets L’explorateur d’objets donne accès aux propriétés, méthodes et événements des objets prédéfinis, de même qu’aux objets créés par l’usager
15
Collection d’objets On peut définir un tableau d’objets Dim Produits(1..100) As Cproduit Mieux vaut utiliser une collection qui comporte des propriétés et méthodes pour l’insertion, la suppression, l’accès et le dénombrement. Produits As New Collection
16
Collection suite Propriétés et méthodes d’un objet collection Add méthode Ajoute des éléments à la collection Count propriété Renvoie le nb. d’éléments dans la collection, en lecture seulement Item méthode Renvoie un élément, par index ou clé Remove méthode Supprime un élément de la collection, par index ou clé
17
Collection suite Il y a des collections prédéfinies dans chaque projet Forms: la collection des formes d’un projet Controls: la collection des contrôles d’une feuille Dim Ctrl As Control For Each Ctrl In Controls If TypeOf Ctrl = TextBox Then Ctrl.Text = “” End if Next
18
Collection suite Il est recommandé de construire ses propres collections, afin d’en contrôler le contenu. Il s’agit de construire une classe collection Il faut définir des méthodes Ajouter (Add), Retirer (Remove), Itème (Item) et une propriété Cardinalité (Count)
19
Initialize et Terminate Sub Class_Initialize code à faire lors de la naissance d’un objet End sub Sub Class_Terminate code à faire lors de la mort d’un objet End sub
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.