In diesem Artikel erfahren Sie mehr über die C#-Klasse. Klasse ist der Bauplan der Objekte, die erstellt werden. Nehmen wir in einem Echtzeitszenario an, dass Car eine Klasse ist. Das Auto hat also bestimmte Eigenschaften wie Form, Geschwindigkeit, Innenraum, Farbe und viele andere Dinge. Daher stellen viele Unternehmen Autos her, die diese Anforderungen erfüllen. Beispielsweise verfügt jedes Auto von Maruti und Hyundai über diese Objekte. Wir können eine Klasse mit dem Namen „car“ definieren und die Objekte gemäß den Eigenschaften des Autos erstellen. In ähnlicher Weise verfügt eine Klasse in OOP oder objektorientierten Programmen über viele Eigenschaften wie Ereignisse, Methoden, Felder usw. Eine Klasse ermöglicht es einem Programmierer, benutzerdefinierte Objekttypen gemäß seinen Anforderungen zu erstellen.
Syntax:
Wir können die Klasse mit dem Schlüsselwort „Klasse“ definieren, gefolgt vom Namen der Klasse, den wir festlegen, und ihn in ein Paar geschweifte Klammern einschließen.
Class Test { }
Nachfolgend finden Sie Beispiele, die zeigen, wie es umgesetzt werden kann
Abstrakte Klasse
Code:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; public abstract class Animals { public abstract void aml (); // abstract class method } public class Cat : Animals // inheritance { public override void aml() { Console.WriteLine("This is first animal"); } } public class Dog : Animals // another class inheritance { public override void aml() { Console.WriteLine("This is second animal"); } } public class main_method { public static void Main() // main method { Animals a; a = new Cat(); a.aml(); a = new Dog(); a.aml(); Console.ReadLine(); } }
Erklärung: Im obigen Beispiel gibt es eine abstrakte Klasse Animals mit der abstrakten Methode aml(). Die Klassentiere sind in der Kinderklasse „Katze“ und in der jeweils anderen Kinderklasse „Hund“ enthalten. In der Hauptmethode ist „a“ das Objekt einer Klasse „Tiere“, die nicht instanziiert werden kann. Zum Zeitpunkt der Vererbung werden abstrakte Klassen verwendet, die Konstruktoren und Destruktoren enthalten. Das Schlüsselwort „Override“ ist ein Muss vor der abstrakten Methode, die zum Erben der untergeordneten Klasse verwendet wird.
Ausgabe:
Versiegelte Klasse
Code:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; public class Animal { public virtual void sleep() { Console.WriteLine("Animals are sleeping"); } public virtual void eat() { Console.WriteLine("Animals are eating"); } } public class Cat : Animal // inheritance { public override void sleep() { Console.WriteLine("Cat is sleeping"); } public sealed override void eat() // sealed method { Console.WriteLine("Cat is eating"); } } public class Dog : Cat // inheritance { public override void Sleep() { Console.WriteLine("Sleeping"); } public override void eat() { Console.WriteLine("Eating"); } } public class TestSealed { public static void Main() // main method { Dog d = new Dog(); d.eat(); d.fly(); } }
Erklärung: Im obigen Beispiel gibt es eine versiegelte Methode, die verwendet wird, um zu verhindern, dass die anderen Klassen geerbt werden. Wenn wir in diesem Fall versuchen, die versiegelte Klasse zu erben, liest der Compiler das Schlüsselwort „sealed“ und gibt einen Fehler aus. Daher kann es nicht überschrieben werden.
Ausgabe:
Statische Klasse
Code:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; class Office { public static string Name; // static fields public static string Location; static Office() // constructor { Name = "Microsoft"; Location = "Hyderabad"; } } class Program { static void Main(string[] args) { Console.WriteLine(Office.Name); Console.WriteLine(Office.Location); Console.Read(); } }
Erklärung: Im obigen Beispiel gibt es eine statische Klasse und ein static-Schlüsselwort wird für statische Klassen verwendet, wodurch die Klasse nicht instanziierbar wird. Es besteht aus dem Namen und dem Standort eines statischen Mitglieds. In der Hauptmethode greifen wir auf die statischen Datenelemente des Klassenbüros zu. Ein Objekt für statische Klassen kann nicht erstellt werden. Statische Klassen können nicht von anderen Klassen geerbt werden.
Ausgabe:
Teilunterricht
Code:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; // partial class1.cs public partial class Class1 { private string EmpName; private int EmpId; public Class1(string a, int t) { this.EmpName = a; this.EmpId = t; } } // partial class2.cs public partial class Class1 { public void Display() { Console.WriteLine("Employee name is : " + EmpName); Console.WriteLine("Employee Id is : " + EmpId); } } public class Class { private string EmpName; private int EmpId; public Class(string a, int t) { this.EmpName = a; this.EmpId = t; } public void Display() { Console.WriteLine("Employees name is : " + EmpName); Console.WriteLine("Employee Id is : " + EmpId); } }
Erklärung: Im obigen Beispiel ist die Teilklasse implementiert. Es kann verwendet werden, wenn wir einen langen Unterricht haben. Um den Code zu vereinfachen, können wir mehrere Dateien definieren. Partial ist das Schlüsselwort, das bei diesen Klassentypen verwendet wird. So kann es unter Verwendung des Schlüsselworts „partial“ in mehrere Dateien aufgeteilt werden, die aus einer Methode bestehen. Dabei werden teilweise class1.cs und teilweise class2.cs vom Compiler in einer einzigen Datei zusammengefasst.
Ausgabe:
Hinweise: Zugriffsspezifizierer helfen beim Zugriff auf das Mitglied und die Klasse selbst.Für den Zugriff auf Klassenmitglieder sollten wir den Punktoperator verwenden. Der Punktoperator hilft dabei, den Namen des Objekts mit dem Namen des Mitglieds zu verknüpfen. Wir können Methoden, Konstruktoren und Destruktoren innerhalb der Klasse definieren.
Das obige ist der detaillierte Inhalt vonC#-Klasse. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!