Question

Je ne viens de terminer une unité sur les modèles de logiciels et je suis maintenant essaie de comprendre le cadre PureMVC. Une chose a obtenu mon perplexe cependant quelque chose qui est simple aux gourous ici.

Je tente de créer une instance de la classe de façade singleton. Dans le constructeur, l'état des commentaires:

  

Cette mise en œuvre de IFacade est un Singleton, alors vous ne devriez pas appeler le constructeur directement, mais au lieu d'appeler la méthode statique Singleton usine Facade.Instance

Comment pouvez-vous appeler la méthode d'instance lorsque l'objet de façade n'a pas encore été créé?

La méthode Facade.Instance ressemble à ceci:

public static IFacade Instance
    {
        get
        {
            if (m_instance == null)
            {
                lock (m_staticSyncRoot)
                {
                    if (m_instance == null) m_instance = new Facade();
                }
            }

            return m_instance;
        }
    }
Était-ce utile?

La solution

Vous accédez à une propriété statique. Les propriétés statiques font partie de la définition de la classe, et non pas des instances de classe. Pour accéder à un membre statique (propriété, champ, méthode), utilisez simplement le nom de la classe membre de points:

var myFacade = SomeClass.Instance;
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top