Skip to content

Créer une classe

  • Le nom de la classe doit commencer par une Majuscule
  • Le nom doit être significatif (une classe qui représente un rendez-vous : RendezVous)
  • Aucun accent

1. Ajouter une fichier .cs dans le projet

  • Le nom du fichier .cs doit être le même que celui de la classe

2. Définir la classe

Dans cet exemple la classe définie est Personne, et représente... quelqu'un.

Le projet pour travailler s'appelle GestionClasse, d'où le namespace est GestionClasse.

namespace GestionClasse
{
    public class Personne
    {
        public string prenom;
        public string nom;
        public int age;

        public void afficherNomComplet()
        {
            Console.WriteLine($"{this.prenom} {this.nom}");
        }
    }
}

Les attributs prenom, nom et age constituent l'état de la classe La méthode afficherNomComplet() est la seule interaction et fait partie du comportement de la classe

3. Attributs et comportements

  • Les attributs sont des variables ou des structures de données (tableau, liste, classe, ...)
  • Lorsque l'on utilise un attribut dans un comportement (méthode de la classe) il faut utiliser le mot clé this en avant de l’attribut

Exemple d'utilisation d'un attribut dans une méthode de la classe :

    public void changerNom(string nom)
    {
        this.nom = nom
    }

Dans cet exemple this.nom est l'attribut et nom est le paramètre.

4. Niveau d'accès

Dans l'exemple précédent, on observe le mot clé public

Une classe est généralement publique, c'est à dire que l'on peut l'utiliser à partir de n'importe quel endroit dans le code!

Les niveaux d'accès indiquent où une classe, un attribut ou une méthode peut être utilisé. Les règles disponibles ne sont pas tout à fait les mêmes :

Niveau d'accès Classe de premier niveau Classe imbriquée Attribut Méthode
public Accessible partout Accessible partout Accessible partout Accessible partout
private Non permis Accessible seulement dans la classe qui la contient Accessible seulement dans la classe Accessible seulement dans la classe
protected Non permis Accessible dans la classe et ses classes dérivées Accessible dans la classe et ses classes dérivées Accessible dans la classe et ses classes dérivées

Par défaut, les classes imbriquées, les attributs et les méthodes sont private. Les classes de premier niveau sont accessibles partout dans le projet (public/internal).