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

Framework .NET Discussion :

Interface, membres et implémentation..


Sujet :

Framework .NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 13
    Par défaut Interface, membres et implémentation..
    Bonjour,

    je viens de m'apercevoir que la classe List<T> qui implémente plusieurs interfaces dont ICollection<T> ne propose pas la propriété IsReadOnly.

    Or IsReadOnly est membre de l'interface ICollection<T>.
    Donc ma question est la suivante :

    Comment faire, quand on est dans une classe, pour ne pas implémenter un membre d'une interface qu'on implémente ?

    merci.

  2. #2
    Membre émérite
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    547
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 547
    Par défaut
    Salut,

    si si, la propriété est bien presente mais est implementée de facon explicite :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    class List<T> : IList ...
    {
        //Implicit
        public bool IsReadOnly()
        {
        }
     
        // Explicit (on notera qu'il n'y pas de visibilité)
        bool IList.IsReadOnly()
        {
        }
    }
    La difference est que dans le premier cas, tu peux appeler le membre depuis un type concret ou depuis une interface derivant d'IList, dans le second seule une variable typée explicitement IList peut appeler le membre.

    Ca peut servir en effet, à produire un masquage de membres. Le membre reste accessible mais seulement par un typage particulier.

Discussions similaires

  1. Publier une interface avec plusieurs implémentations
    Par yous18 dans le forum Services Web
    Réponses: 2
    Dernier message: 11/05/2012, 17h11
  2. Réponses: 2
    Dernier message: 16/12/2011, 17h26
  3. Les interfaces et leur implémentation
    Par ngthurel dans le forum Langage
    Réponses: 8
    Dernier message: 19/10/2011, 13h53
  4. [Langage/Algorithme] Interface dont l'implémentation est réparti dans plusieurs classes
    Par ShaiLeTroll dans le forum C++Builder
    Réponses: 9
    Dernier message: 31/05/2011, 11h40
  5. Réponses: 3
    Dernier message: 08/06/2007, 09h50

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