[Tutoriel C#] Propriétés C# (Propriété)

黄舟
Libérer: 2016-12-24 13:23:48
original
1071 Les gens l'ont consulté

Propriétés C#

Les propriétés sont nommées membres de classes, de structures et d'interfaces. Les variables ou méthodes membres d’une classe ou d’une structure sont appelées champs. Les propriétés sont des extensions des champs et sont accessibles en utilisant la même syntaxe. Ils utilisent des accesseurs pour permettre la lecture, l'écriture ou la manipulation des valeurs de champs privés.

La propriété ne détermine pas l'emplacement de stockage. Au lieu de cela, ils disposent d’accesseurs capables de lire, d’écrire ou de calculer leurs valeurs.

Par exemple, il existe une classe appelée Étudiant avec des champs privés pour l'âge, le nom et le code. Nous ne pouvons pas accéder directement à ces champs en dehors de la portée de la classe, mais nous pouvons avoir des propriétés qui accèdent à ces champs privés.

Accesseurs

Les accesseurs d'une propriété contiennent des instructions exécutables qui aident à obtenir (lire ou calculer) ou à définir (écrire) la propriété. Une déclaration d'accesseur peut contenir un accesseur get, un accesseur set, ou les deux. Par exemple :

// 声明类型为 string 的 Code 属性
public string Code
{
   get
   {
      return code;
   }
   set
   {
      code = value;
   }
}

// 声明类型为 string 的 Name 属性
public string Name
{
   get
   {
     return name;
   }
   set
   {
     name = value;
   }
}

// 声明类型为 int 的 Age 属性
public int Age
{ 
   get
   {
      return age;
   }
   set
   {
      age = value;
   }
}
Copier après la connexion

Exemple

L'exemple suivant démontre l'utilisation des propriétés :

using System;
namespace tutorialspoint
{
   class Student
   {

      private string code = "N.A";
      private string name = "not known";
      private int age = 0;

      // 声明类型为 string 的 Code 属性
      public string Code
      {
         get
         {
            return code;
         }
         set
         {
            code = value;
         }
      }
   
      // 声明类型为 string 的 Name 属性
      public string Name
      {
         get
         {
            return name;
         }
         set
         {
            name = value;
         }
      }

      // 声明类型为 int 的 Age 属性
      public int Age
      {
         get
         {
            return age;
         }
         set
         {
            age = value;
         }
      }
      public override string ToString()
      {
         return "Code = " + Code +", Name = " + Name + ", Age = " + Age;
      }
    }
    class ExampleDemo
    {
      public static void Main()
      {
         // 创建一个新的 Student 对象
         Student s = new Student();
            
         // 设置 student 的 code、name 和 age
         s.Code = "001";
         s.Name = "Zara";
         s.Age = 9;
         Console.WriteLine("Student Info: {0}", s);
         // 增加年龄
         s.Age += 1;
         Console.WriteLine("Student Info: {0}", s);
         Console.ReadKey();
       }
   }
}
Copier après la connexion

Lorsque le code ci-dessus est compilé et exécuté, il produira le résultats suivants :

Student Info: Code = 001, Name = Zara, Age = 9
Student Info: Code = 001, Name = Zara, Age = 10
Copier après la connexion
Copier après la connexion

Propriétés abstraites

Les classes abstraites peuvent avoir des propriétés abstraites, qui doivent être implémentées dans les classes dérivées. Le programme suivant illustre ceci :

using System;
namespace tutorialspoint
{
   public abstract class Person
   {
      public abstract string Name
      {
         get;
         set;
      }
      public abstract int Age
      {
         get;
         set;
      }
   }
   class Student : Person
   {

      private string code = "N.A";
      private string name = "N.A";
      private int age = 0;

      // 声明类型为 string 的 Code 属性
      public string Code
      {
         get
         {
            return code;
         }
         set
         {
            code = value;
         }
      }
   
      // 声明类型为 string 的 Name 属性
      public override string Name
      {
         get
         {
            return name;
         }
         set
         {
            name = value;
         }
      }

      // 声明类型为 int 的 Age 属性
      public override int Age
      {
         get
         {
            return age;
         }
         set
         {
            age = value;
         }
      }
      public override string ToString()
      {
         return "Code = " + Code +", Name = " + Name + ", Age = " + Age;
      }
   }
   class ExampleDemo
   {
      public static void Main()
      {
         // 创建一个新的 Student 对象
         Student s = new Student();
            
         // 设置 student 的 code、name 和 age
         s.Code = "001";
         s.Name = "Zara";
         s.Age = 9;
         Console.WriteLine("Student Info:- {0}", s);
         // 增加年龄
         s.Age += 1;
         Console.WriteLine("Student Info:- {0}", s);
         Console.ReadKey();
       }
   }
}
Copier après la connexion

Lorsque le code ci-dessus est compilé et exécuté, il produira les résultats suivants :

Student Info: Code = 001, Name = Zara, Age = 9
Student Info: Code = 001, Name = Zara, Age = 10
Copier après la connexion
Copier après la connexion

Ce qui précède est [tutoriel c#] Propriétés C# ( Property), veuillez faire attention au site Web PHP chinois (www.php.cn) pour plus de contenu connexe !


Étiquettes associées:
c#
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal