IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

[débutant] héritage, polymorphisme, etc !


Sujet :

C#

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    81
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Mars 2007
    Messages : 81
    Points : 58
    Points
    58
    Par défaut [débutant] héritage, polymorphisme, etc !
    Bonjour,

    A force de lire des trucs sur le net, je commence à sérieusement m'embrouiller !
    Je vous explique ce que je cherche à faire :

    J'ai une super classe (que j'ai mis en abstract donc) avec par exemple une méthode Work() (abstract aussi).
    Ensuite j'ai des classes qui héritent de cette super classe avec chacune leur méthode override Work().
    Jusque là, ok, enfin j'espère !

    Ce que je cherche ensuite à faire c'est depuis une autre classe avoir une méthode DoTheWork qui lancera le Work qu'il faut.
    Donc comment dire à ce DoTheWork le Work que je veux qu'il fasse.
    Je vous remercie d'avance pour m'éclairer un peu sur tout ce shmilblik.

    En attendant, je continue ma recherche d'infos...


  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    81
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Mars 2007
    Messages : 81
    Points : 58
    Points
    58
    Par défaut
    Bon finalement, je passe en paramètre l'objet de la classe que je veux à DoTheWork et après je fais un cast dans DoTheWork pour appeler le bon Work.

    c'était ça qu'il fallait faire ?

  3. #3
    Expert éminent sénior

    Avatar de Philippe Vialatte
    Homme Profil pro
    Architecte technique
    Inscrit en
    Juillet 2004
    Messages
    3 029
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juillet 2004
    Messages : 3 029
    Points : 12 465
    Points
    12 465
    Par défaut
    bonjour,

    petite question, plutot que d'avoir une classe abstract avec une methode que tu overrides, pourquoi ne pas faire une interface ?

    apres, tu fais ta classe WorkManager, par ex:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    public class WorkManager{
     
    public void DoTheWork (IWorker worker){
        IWorker.Work();
    }
     
    }

    Mon Blog

    The Cake is still a lie !!!



    Vous voulez contribuer à la rubrique .NET ? Contactez-moi par MP.
    Vous voulez rédiger des articles pour la rubrique .NET ? Voici la procédure à suivre.

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    81
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Mars 2007
    Messages : 81
    Points : 58
    Points
    58
    Par défaut
    En quelques mots, quel est l'intérêt d'une interface ? Sur ce que tu me montres je devine un peu ce que c'est, mais quelle va être la différence entre une classe abstract et une interface ?
    C'est comme la différence entre une voiture et une fourgonnette : tu peux aller faire tes courses avec les deux, mais chacune a ses spécificités.

    mon dieux, cet exemple est naze !

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    81
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Mars 2007
    Messages : 81
    Points : 58
    Points
    58
    Par défaut
    bon j'ai compris dans la théorie la différence entre classe abstraite et interface. et effectivement dans mon cas, on dirait qu'une interface serait mieux :

    j'ai des classes qui ont un Work() qui renvoi toujours le même type d'éléments mais qui font le travail différemment.

Discussions similaires

  1. [Héritage] [Polymorphisme] Question de débutant ?
    Par TSnarfK dans le forum Langage
    Réponses: 9
    Dernier message: 12/09/2006, 15h39
  2. [Débutant]Héritage
    Par Ryadus dans le forum Langage
    Réponses: 6
    Dernier message: 30/01/2006, 11h27
  3. Réponses: 2
    Dernier message: 25/07/2004, 23h24
  4. [débutant]héritage
    Par pacha1 dans le forum Langage
    Réponses: 4
    Dernier message: 26/05/2004, 17h12
  5. [Débutant] Héritage & appel de méthodes
    Par KooX dans le forum Langage
    Réponses: 4
    Dernier message: 11/05/2004, 23h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo