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 :

La class possédant un attribut de même type que la class


Sujet :

C#

  1. #1
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2007
    Messages
    643
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2007
    Messages : 643
    Points : 305
    Points
    305
    Par défaut La class possédant un attribut de même type que la class
    Salut à tous,

    J'aimerais comprendre un code qui m'a été fourni en .NET. Je suis dans une situation ou j'ai une classe (contenu dans la couche model) qui possède un attribut du type de la classe elle-même.

    Je trouve plutôt étonnant surtout quand le code compile bien, car pour moi cela fait un referencement infini et sans fin d'objet qui créé un objet de même classe qui créé un objet de même classe etc....

    S'agit-il d'un Design Pattern particulier ou qu'elle principe régis ce comportement ?

    Merci pour votre éclairage.


    Exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
     
    public sealed class CachingServiceLocator : IDisposable
    {
     
            private Hashtable cache; /// Le cache des références vers les services métiers
     
            private static volatile CachingServiceLocator me; /// L'unique instance du Service Locator
     
            /// Le constructeur statique
            static CachingServiceLocator()
            {
                try
                {
                    me = new CachingServiceLocator();
                }
                catch (Exception)
                {
                    MessageBox.Show("Impossible de créer le service locator...\nVeuillez accepter toutes nos excuses pour le désagrément occasionné..." , "Service Locator !", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
    }

  2. #2
    Membre expert
    Avatar de GuruuMeditation
    Homme Profil pro
    .Net Architect
    Inscrit en
    Octobre 2010
    Messages
    1 705
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Belgique

    Informations professionnelles :
    Activité : .Net Architect
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2010
    Messages : 1 705
    Points : 3 568
    Points
    3 568
    Par défaut
    c'est un constructeur et une propriété statique. Le constructeur est donc appelé qu'une fois.
    Microsoft MVP : Windows Platform

    MCPD - Windows Phone Developer
    MCPD - Windows Developer 4

    http://www.guruumeditation.net

    “If debugging is the process of removing bugs, then programming must be the process of putting them in.”
    (Edsger W. Dijkstra)

  3. #3
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2007
    Messages
    643
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2007
    Messages : 643
    Points : 305
    Points
    305
    Par défaut
    Effectivement quand on a un indice de recherche c'est nettement plus simple de comprendre

    D'ailleurs j'avais appris à l'époque le Design pattern singleton qui semblait bien plus compliqué que ce constructeur static pour au final arrivé à la même chose.

Discussions similaires

  1. Réponses: 15
    Dernier message: 13/03/2014, 18h04
  2. Variable statique de meme type que la classe qui la contient
    Par MSN9149 dans le forum Débuter avec Java
    Réponses: 5
    Dernier message: 09/02/2012, 10h38
  3. Récupérer objets d'un même type dans une classe
    Par Madfrix dans le forum Langage
    Réponses: 12
    Dernier message: 19/02/2008, 13h17
  4. 2 objets de même type dans une classe
    Par _R3nO_ dans le forum Hibernate
    Réponses: 2
    Dernier message: 28/02/2007, 16h12
  5. Réponses: 2
    Dernier message: 05/09/2006, 10h08

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