private (Référence C#)

Le mot clé private est un modificateur d'accès au membre. L'accès privé est le niveau d'accès le moins permissif. Les membres privés sont accessibles uniquement dans le corps de la classe ou de la structure où ils sont déclarés, comme dans l'exemple suivant :

class Employee
{
    private int i;
    double d;   // private access by default
}

Les types imbriqués dans le même corps peuvent également accéder à ces membres privés.

Référencer un membre privé en dehors de la classe ou du struct où il est déclaré serait à l'origine d'une erreur de compilation.

Pour une comparaison de private avec les autres modificateurs d'accès, consultez Niveaux d'accessibilité et Modificateurs d'accès (Guide de programmation C#).

Exemple

Dans cet exemple, la classe Employee contient deux membres de données privés, name et salary. En tant que membres privés, ils ne sont pas accessibles, sauf par les méthodes membre. Par conséquent, les méthodes publiques appelées GetName et Salary sont ajoutées pour permettre un accès contrôlé aux membres privés. Le membre name est accédé via une méthode publique, et le membre salary est accédé via une propriété publique en lecture seule. (Consultez Propriétés (Guide de programmation C#) pour plus d'informations.)

// private_keyword.cs
using System;
class Employee
{
    private string name = "FirstName, LastName";
    private double salary = 100.0;

    public string GetName()
    {
        return name;
    }

    public double Salary
    {
        get { return salary; }
    }
}

class MainClass
{
    static void Main()
    {
        Employee e = new Employee();

        // The data members are inaccessible (private), so
        // then can't be accessed like this:
        //    string n = e.name;
        //    double s = e.salary;

        // 'name' is indirectly accessed via method:
        string n = e.GetName();

        // 'salary' is indirectly accessed via property
        double s = e.Salary;
    }
}

Spécification du langage C#

Pour plus d'informations, consultez les sections suivantes dans Spécifications du langage C#.

  • 3.5.1 Accessibilité déclarée

  • 3.5.4 Contraintes d'accessibilité

  • 10.2.3 Modificateurs d'accès

  • 10.2.6.2 Accessibilité déclarée

  • 10.2.6.5 Accès aux membres private et protected du type conteneur

Voir aussi

Référence

Mots clés C#
Modificateurs d'accès (Référence C#)
Niveaux d'accessibilité (Référence C#)
Modificateurs (Référence C#)
public (Référence C#)
protected (Référence C#)
internal (Référence C#)

Concepts

Guide de programmation C#

Autres ressources

Référence C#