Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Industrial programming >> C Taal

C# - Eigenschappen

Eigenschappen zijn benoemde leden van klassen, structuren en interfaces. Lidvariabelen of methoden in een klasse of structuren worden Velden . genoemd . Eigenschappen zijn een uitbreiding van velden en zijn toegankelijk met dezelfde syntaxis. Ze gebruiken accessoires waardoor de waarden van de privévelden kunnen worden gelezen, geschreven of gemanipuleerd.

Eigenschappen noemen de opslaglocaties niet. In plaats daarvan hebben ze accessors die hun waarden lezen, schrijven of berekenen.

Laten we bijvoorbeeld een klas hebben met de naam Student, met privévelden voor leeftijd, naam en code. We hebben geen directe toegang tot deze velden van buiten het klassenbereik, maar we kunnen wel eigenschappen hebben voor toegang tot deze privévelden.

Accessors

De accessor van een eigenschap bevat de uitvoerbare instructies die helpen bij het verkrijgen (lezen of berekenen) of instellen (schrijven) van de eigenschap. De accessor-declaraties kunnen een get-accessor, een set-accessor of beide bevatten. Bijvoorbeeld −

// 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;
   }
}

Voorbeeld

Het volgende voorbeeld demonstreert het gebruik van eigenschappen −

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();
      }
   }
}

Wanneer de bovenstaande code wordt gecompileerd en uitgevoerd, levert dit het volgende resultaat op −

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

Abstracte eigenschappen

Een abstracte klasse kan een abstracte eigenschap hebben, die in de afgeleide klasse moet worden geïmplementeerd. Het volgende programma illustreert dit −

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();
      }
   }
}

Wanneer de bovenstaande code wordt gecompileerd en uitgevoerd, levert dit het volgende resultaat op −

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

C Taal

  1. De antimicrobiële eigenschappen van zilver
  2. Rekenkundige eigenschappen
  3. Eigenschappen van exponenten
  4. Molybdeen-Hafnium-Carbon (MHC)
  5. AMPCO® 25 smeedstukken
  6. UGICHROM® 4462
  7. UGICHROM® 4362
  8. Bainidur® 1300
  9. Bainidur® 7980 CN
  10. UGICHROM® 4460
  11. Printdur® 4404