2013-09-10 1 views
1

Je suis dans le processus d'apprentissage et j'ai une question que je n'ai pas été en mesure de trouver une réponse satisfaisante pour.Qu'est-ce que 'this' constructeur, qu'est-ce que c'est

this J'ai besoin d'un aperçu. Je continue à le voir et les gens ont suggéré des correctifs pour mon code qui l'utilisent. Je n'ai vraiment aucune idée de ce que ça fait exactement. Si quelqu'un avait l'amabilité de me donner un aperçu de base, je serais vraiment heureux.

+3

@ droite ripdaddy69, l'OP peut regarder la documentation java pour savoir ce que C# était comme il y a 20 ans. –

+1

@HighCore la question n'avait pas de langage spécifique attaché à l'époque. –

+0

@ ripdaddy69 aucun problème mec, les livres d'histoire de l'âge de pierre sont toujours une lecture intéressante. –

Répondre

8

Il est utilisé pour désigner un autre constructeur de la même classe. Vous pouvez l'utiliser pour « hériter » un autre constructeur:

public MyClass() {} 

public MyClass(string something) : this() {} 

Dans ce qui précède, lorsque le second constructeur est appelé, il exécute le constructeur de premier parameterless, avant de s'exécuter. Notez que l'utilisation de : this() est l'équivalent de : base(), sauf qu'elle fait référence à un constructeur de la même classe, au lieu de la classe parente.

Il y a un article sur les constructeurs here (MSDN), qui fournit un exemple d'utilisation:

public Employee(int annualSalary) 
{ 
    salary = annualSalary; 
} 

public Employee(int weeklySalary, int numberOfWeeks) 
    : this(weeklySalary * numberOfWeeks) 
{ 
} 
0

Le ce mot-clé est utilisé dans de nombreux contextes et donnant une réponse complète sera possible que de reproduire l'ensemble de la source faisant autorité. The C# Language Reference

Le mot-clé this fait référence à l'instance en cours de la classe et est également utilisé en tant que modificateur du premier paramètre d'une méthode d'extension.

Questions connexes