Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Industrial programming >> C Sprache

C# - Eigenschaften

Eigenschaften sind benannte Mitglieder von Klassen, Strukturen und Schnittstellen. Mitgliedsvariablen oder Methoden in einer Klasse oder Struktur werden Felder genannt . Eigenschaften sind eine Erweiterung von Feldern und werden mit derselben Syntax aufgerufen. Sie verwenden Accessoren über die die Werte der privaten Felder gelesen, geschrieben oder manipuliert werden können.

Eigenschaften benennen die Speicherorte nicht. Stattdessen haben sie Accessoren die ihre Werte lesen, schreiben oder berechnen.

Nehmen wir zum Beispiel eine Klasse mit dem Namen „Student“ mit privaten Feldern für Alter, Name und Code. Wir können von außerhalb des Klassenbereichs nicht direkt auf diese Felder zugreifen, aber wir können Eigenschaften für den Zugriff auf diese privaten Felder haben.

Accessoren

Der Accessor einer Eigenschaft enthält die ausführbaren Anweisungen, die beim Abrufen (Lesen oder Berechnen) oder Festlegen (Schreiben) der Eigenschaft helfen. Die Accessor-Deklarationen können einen Get-Accessor, einen Set-Accessor oder beides enthalten. Zum Beispiel −

// Declare a Code property of type string:
public string Code {
   get {
      return code;
   }
   set {
      code = value;
   }
}

// Declare a Name property of type string:
public string Name {
   get {
      return name;
   }
   set {
      name = value;
   }
}

// Declare a Age property of type int:
public int Age { 
   get {
      return age;
   }
   set {
      age = value;
   }
}

Beispiel

Das folgende Beispiel demonstriert die Verwendung von Eigenschaften −

Live-Demo
using System;
namespace tutorialspoint {
   class Student {
      private string code = "N.A";
      private string name = "not known";
      private int age = 0;
      
      // Declare a Code property of type string:
      public string Code {
         get {
            return code;
         }
         set {
            code = value;
         }
      }
      
      // Declare a Name property of type string:
      public string Name {
         get {
            return name;
         }
         set {
            name = value;
         }
      }
      
      // Declare a Age property of type int:
      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() {
      
         // Create a new Student object:
         Student s = new Student();
         
         // Setting code, name and the age of the student
         s.Code = "001";
         s.Name = "Zara";
         s.Age = 9;
         Console.WriteLine("Student Info: {0}", s);
         
         //let us increase age
         s.Age += 1;
         Console.WriteLine("Student Info: {0}", s);
         Console.ReadKey();
      }
   }
}

Wenn der obige Code kompiliert und ausgeführt wird, erzeugt er das folgende Ergebnis −

Student Info: Code = 001, Name = Zara, Age = 9
Student Info: Code = 001, Name = Zara, Age = 10

Abstrakte Eigenschaften

Eine abstrakte Klasse kann eine abstrakte Eigenschaft haben, die in der abgeleiteten Klasse implementiert werden sollte. Das folgende Programm veranschaulicht dies −

Live-Demo
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;
      
      // Declare a Code property of type string:
      public string Code {
         get {
            return code;
         }
         set {
            code = value;
         }
      }
      
      // Declare a Name property of type string:
      public override string Name {
         get {
            return name;
         }
         set {
            name = value;
         }
      }
      
      // Declare a Age property of type int:
      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() {
         // Create a new Student object:
         Student s = new Student();
         
         // Setting code, name and the age of the student
         s.Code = "001";
         s.Name = "Zara";
         s.Age = 9;
         Console.WriteLine("Student Info:- {0}", s);
         
         //let us increase age
         s.Age += 1;
         Console.WriteLine("Student Info:- {0}", s);
         Console.ReadKey();
      }
   }
}

Wenn der obige Code kompiliert und ausgeführt wird, erzeugt er das folgende Ergebnis −

Student Info: Code = 001, Name = Zara, Age = 9
Student Info: Code = 001, Name = Zara, Age = 10

C Sprache

  1. Die antimikrobiellen Eigenschaften von Silber
  2. arithmetische Eigenschaften
  3. Eigenschaften von Exponenten
  4. Molybdän-Hafnium-Kohlenstoff (MHC)
  5. AMPCO® 25-Schmiedeteile
  6. UGICHROM® 4462
  7. UGICHROM® 4362
  8. Bainidur® 1300
  9. Bainidur® 7980 CN
  10. UGICHROM® 4460