Partager via


Propriétés (Guide de programmation C#)

Une propriété est un membre offrant un mécanisme souple pour la lecture, l'écriture ou le calcul des valeurs de champs privés.Elles peuvent être utilisées comme si elles étaient des membres de données publiques, mais en fait, ce sont des méthodes spéciales appelées accesseurs.Elles facilitent l'accès aux données tout en préservant la sécurité et la souplesse des méthodes.

Dans cet exemple, la classe TimePeriod stocke une durée.En interne, la classe stocke la durée en secondes, mais avec une propriété appelée Hours, un client peut la spécifier en heures.Les accesseurs de la propriété Hours assurent la conversion entre heures et secondes.

Exemple

class TimePeriod
{
    private double seconds;

    public double Hours
    {
        get { return seconds / 3600; }
        set { seconds = value * 3600; }
    }
}


class Program
{
    static void Main()
    {
        TimePeriod t = new TimePeriod();

        // Assigning the Hours property causes the 'set' accessor to be called.
        t.Hours = 24;

        // Evaluating the Hours property causes the 'get' accessor to be called.
        System.Console.WriteLine("Time in hours: " + t.Hours);
    }
}
// Output: Time in hours: 24

Vue d'ensemble des propriétés

  • Avec des propriétés, une classe peut exposer de manière publique l'obtention et la définition de valeurs, tout en masquant le code d'implémentation ou de vérification.

  • Un accesseur de propriété get permet de retourner la valeur de propriété, et un accesseur set est utilisé pour assigner une nouvelle valeur.Ces accesseurs peuvent avoir des niveaux d'accès différents.Pour plus d'informations, consultez Restriction d'accessibilité de l'accesseur (Guide de programmation C#).

  • Le mot clé value sert à définir la valeur assignée par l'accesseur set.

  • Les propriétés qui n'implémentent pas un accesseur set sont en lecture seule.

  • Pour les propriétés simples qui ne requièrent aucun code d'accesseur personnalisé, pensez à utiliser les propriétés implémentées automatiquement.Pour plus d'informations, consultez Propriétés implémentées automatiquement (Guide de programmation C#).

Rubriques connexes

Spécification du langage C#

Pour plus d'informations, consultez la Spécification du langage C#. La spécification du langage est la source de référence pour la syntaxe C# et son utilisation.

Voir aussi

Référence

Utilisation de propriétés (Guide de programmation C#)

Indexeurs (Guide de programmation C#)

Concepts

Guide de programmation C#