laurent's profileEspace perso Windows Liv...PhotosBlogListsMore ![]() | Help |
Espace perso Windows Live Laurent |
||||||||||||||||||||||||||||||||||||
|
June 03 Surcharge d'opérateursQu’est ce que la surcharge d’opérateurs?La surcharge d’opérateur va vous permettre de gérer le comportement d’un objet face à un opérateur (=, +, - etc..). Par exemple, le compilateur ne sais pas additionner deux instances de type Employee, c’est donc à vous de surcharger l’opérateur + (fusion des attributs salaires…).
Comprendre par l’exempleNous allons apprendre à utiliser la surcharge d’opérateurs grâce à la classe crée ci-dessus. Nous allons sur définir l’opérateur + afin que nous puissions incrémenter le salaire d’un employé de cette façon :
monEmployee = monEmployee + 5000
Utilisation de notre classe Client : Surcharge de méthodesQu’est ce que la surcharge de méthodes ?La surcharge de méthode va vous permettre de créer plusieurs méthodes de classes ayant le même nom mais pas la même valeur de retour et/ou paramètres. Cas pratique : vous connaissez certainement la méthode statique Console.WriteLine() ;. Cette méthode attend en paramètres plusieurs types possibles (affichage d’un int, string, double…) :
Comprendre par l’exemple
Ce sera le compilateur qui choisira la fonction à appeler suivant le type passé en paramètre. Création d'une collection typéeCréation de notre liste génériqueNous allons maintenant voir comment créer en plusieurs étapes notre collection typée. Cela mettra en œuvre l’un des principes du polymorphisme (typage dynamique à l’exécution).
· Etape 1, Analyse d’une classe Pile non typéeDans cet exemple nous allons créer une classe Pile nous permettant de stocker des éléments à l’aide d’un ArrayList.
Etape 2, Utilisation d’une classe générique pour notre classe PileNous allons maintenant utiliser la classe générique List afin d’obtenir une classe Pile pouvant être typée à la déclaration et à l’instanciation. Vous pouvez constater que nous utiliserons T pour désigner le type défini lors du typage de notre classe Pile.
· Etape 3, Test de la classe PileMaintenant nous pouvons utiliser notre classe Pile de cette façon :
La classe SortedListLa classe SortedListLa classe SortedList est identique à celle non générique hormis le fait qu’elle soit typée.
Voici un exemple d’utilisation de la classe SortedList :
La classe ListLa classe ListLa classe List va permettre le stockage d’objet de la même manière qu’une collection ArrayList mais de façon typée.
Voici un exemple de la classe List utilisant des variables de type string :
Vous remarquez dans la figure ci-dessous, qu’il est seulement possible d’ajouter des objets de type string dans notre collection une fois celle-ci typée.
Figure 1 – Collection List
Le tri d’une instance de type List se fait à partir de la méthode Sort(). Cependant il faudra la redéfinir si vous n’utilisez pas des types de base (string, int, DateTime…). Pour cela il faut utiliser un comparateur qui implémente l’interface IComparer<>.
Merci de votre visite !
![]() To add a comment, sign in with your Windows Live ID. |
|||||||||||||||||||||||||||||||||||
|
|