Partager via


private (Référence C#)

Mise à jour : novembre 2007

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 obtenir une comparaison entre private et les autres modificateurs d'accès, consultez Niveaux d'accessibilité (Référence C#) 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. Des méthodes publiques appelées GetName et Salary sont ajoutées pour permettre un accès contrôlé aux membres privés. L'accès au membre name est réalisé via une méthode publique, et l'accès au membre salary via une propriété publique en lecture seule. (Consultez Propriétés (Guide de programmation C#) pour plus d'informations.)

class Employee2
{
    private string name = "FirstName, LastName";
    private double salary = 100.0;

    public string GetName()
    {
        return name;
    }

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

class PrivateTest
{
    static void Main()
    {
        Employee2 e = new Employee2();

        // The data members are inaccessible (private), so
        // they 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.3.5 Modificateurs d'accès

  • 10.3.8.2 Accessibilité déclarée

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

Voir aussi

Concepts

Guide de programmation C#

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#)

Autres ressources

Référence C#