Bonjour !

Je m'excuse tout d'abord si un sujet de même type a déjà été ouvert, j'ai essayé de faire une recherche mais il n'y avait pas de réponse...

J'ai du mal à saisir toutes les utilisations de this, et comme je sais que c'est assez important, j'aimerais beaucoup un peu d'aide

Si je prends par exemple le programme suivant :

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
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
// ReferencingThisExplicitly – ce programme montre
//           comment utiliser explicitement la référence à this
using System;
namespace ReferencingThisExplicitly
{
    public class Class1
    {
        public static int Main(string[] strings)
        {
            //crée un objet student
            Student student = new Student();
            student.Init("Stephen Davis", 1234);
            //inscrit l'étudiant à un cours
            Console.WriteLine
                   ("Inscription de Stephen Davis à Biologie 101");
            student.Enroll("Biologie 101");
            //affichage des cours auxquels est inscrit l'étudiant
            Console.WriteLine("Nouvelles caractéristiques de l'étudiant :");
            student.DisplayCourse();
            // attend confirmation de l'utilisateur
            Console.WriteLine("Appuyez sur Entrée pour terminer...");
            Console.Read();
            return 0;
        }
    }
    // Student - notre étudiant d'université
    public class Student
    {
        //tout étudiant a un nom et un numéro d'identification (id)
        public string sName;
        public int nID;
        //le cours auquel est inscrit l'étudiant
        CourseInstance courseInstance;
        // Init - initialise l'objet student
        public void Init(string sName, int nID)
        {
            this.sName = sName;
            this.nID = nID;
            courseInstance = null;
        }
        // Enroll - inscrit l'étudiant courant à un cours
        public void Enroll(string sCourseID)
        {
            courseInstance = new CourseInstance();
            courseInstance.Init(this, sCourseID);
        }
        //affiche le nom de l'étudiant
        //et le cours
        public void DisplayCourse()
        {
            Console.WriteLine(sName);
            courseInstance.Display();
        }
    }
    // CourseInstance - associe l'étudiant au cours
    //                  auquel il est inscrit
    public class CourseInstance
    {
        public Student student;
        public string sCourseID;
        // Init -établit le lien entre l'étudiant et le cours
        public void Init(Student student, string sCourseID)
        {
            this.student = student;
            this.sCourseID = sCourseID;
        }
        // Display - affiche l'intitulé du cours
        public void Display()
        {
            Console.WriteLine(sCourseID);
        }
    }
}
Je crois avoir compris que this est utilisé pour pointer l'objet courant, mais ici on y fait appel plusieurs fois et je ne m'y retrouve pas...

Si quelqu'un a le courage de me donner une explication plus détaillée de ce programme, ça m'aiderait énormément !