3
TP POO- évènementiel en C# - M. TAIS - TDI 1 C# TP POO/ événementiel (classe abstraite, héritage, polymorphisme) (gestion employés d’un hôpital) Dans cet exercice nous allons modéliser le système d'information représenté par les classes suivantes : Le diagramme UML décrivant entièrement les classes Veuillez respecter strictement le nom des classes, des attributs, des méthodes et de leurs paramètres. 1 Écrire la classe Employé (classe abstraite doit être déclarée avec public abstract class, (classe abstraite ne s’instancie pas):) Le constructeur permet de fixer les valeurs de respectivement, noEmployé et nom. La méthode abtraite (sans implémentation) (déclarée avec public abstract )+résuméPaye():String renvoie une chaîne de caractères comportant le numéro d'employé, le nom, et le salaire donné par la méthode abstraite getSalaire, c'est le résumé de la fiche de paye pour un employé. 2 Écrire la classe Agent La méthode +getSalaire():double renvoie le résultat de la multiplication de nbHeures par indice, a déclarer avec public override 3 Écrire la classe Echelon (avec static class) ASSISTANT, CHEF_DE_CLINIQUE et CHEF_DE_SERVICE sont trois constantes. (public const) La méthode statique +getSalaire(echelon:int):double renvoie 3000.0 si le paramètre a la valeur ASSISTANT, 5000.0 si le paramètre a la valeur CHEF_DE_CLINIQUE, 8000 si le paramètre a la valeur CHEF_DE_SERVICE, 0.0 sinon. Rappel : Les fonctionnalités principales d'une classe statique sont : Elles contiennent uniquement des membres statiques. constructeurs

Tp Poo Event Medecins-c#

Embed Size (px)

Citation preview

Page 1: Tp Poo Event Medecins-c#

TP POO- évènementiel en C# - M. TAIS - TDI 1

C# TP POO/ événementiel

(classe abstraite, héritage, polymorphisme)

(gestion employés d’un hôpital) Dans cet exercice nous allons modéliser le système d'information représenté par les classes suivantes :

Le diagramme UML décrivant entièrement les classes Veuillez respecter strictement le nom des classes, des attributs, des méthodes et de leurs paramètres. 1 Écrire la classe Employé (classe abstraite doit être déclarée avec public abstract class, (classe abstraite ne s’instancie pas):) Le constructeur permet de fixer les valeurs de respectivement, noEmployé et nom. La méthode abtraite (sans implémentation) (déclarée avec public abstract )+résuméPaye():String renvoie une chaîne de caractères comportant le numéro d'employé, le nom, et le salaire donné par la méthode abstraite getSalaire, c'est le résumé de la fiche de paye pour un employé. 2 Écrire la classe Agent La méthode +getSalaire():double renvoie le résultat de la multiplication de nbHeures par indice, a déclarer avec public override 3 Écrire la classe Echelon (avec static class) ASSISTANT, CHEF_DE_CLINIQUE et CHEF_DE_SERVICE sont trois constantes. (public const) La méthode statique +getSalaire(echelon:int):double renvoie 3000.0 si le paramètre a la valeur ASSISTANT, 5000.0 si le paramètre a la valeur CHEF_DE_CLINIQUE, 8000 si le paramètre a la valeur CHEF_DE_SERVICE, 0.0 sinon. Rappel :

Les fonctionnalités principales d'une classe statique sont :

• Elles contiennent uniquement des membres statiques.

constructeurs

Page 2: Tp Poo Event Medecins-c#

TP POO- évènementiel en C# - M. TAIS - TDI 2

• Elles ne peuvent pas être instanciées. • Elles sont sealed (ne peuvent pas être héritées). • Elles ne peuvent pas contenir Constructeurs d'instances

4 Écrire la classe Médecin On considère que l'attribut echelon est une valeur parmi les trois constantes de la classe Echelon. La méthode +getSalaire():double doit renvoyer le salaire donné par la classe Echelon selon la valeur de l'attribut échelon. Exemple d’objets : • une instance de Agent : employé n°101, nommé "Agent1" et travaillant 160h à un indice de 15.5DH • une instance de Médecin : employé n°501, nommé "Medecin1" qui est assistant • une instance de Agent : employé n°102, nommé "Agent2" et travaillant 80h à un indice de 22.0DH • une instance de Médecin : employé n°502, nommé "Medecin2" qui est chef de clinique • une instance de Médecin : employé n°503, nommé "Medecin3" qui est chef de service . Les interfaces qui vont permettre de manipuler ces classes dans une collection type ArrayList ou list(of…) sont

Page 3: Tp Poo Event Medecins-c#

TP POO- évènementiel en C# - M. TAIS - TDI 3

Le salaire sera calculé et affiché dans le label

Recherche et affichage dans une datagridview N.B: Pour déterminer le type de l’objet lu à partir de la collection, on peut utiliser: typeof(T).Name // retourne class name, pas de namespace (espace de nom a qui appartient cette classe) typeof(T).FullName // namespace et class name typeof(T).Namespace // namespace, pas de class name