C # Teilklasse und Teilmethode (mit Beispielen)

In diesem Artikel erfahren Sie, wie und warum Teilklassen und Teilmethoden in C # implementiert werden.

Es gibt viele Situationen, in denen Sie möglicherweise eine Klassendefinition aufteilen müssen, z. B. wenn Sie an großen Projekten arbeiten, müssen möglicherweise mehrere Entwickler und Programmierer gleichzeitig an derselben Klasse arbeiten. In diesem Fall können wir eine Funktion namens Teilklasse verwenden .

Einführung in die Teilklasse

Während der Programmierung in C # (oder OOP) können wir die Definition einer Klasse auf zwei oder mehr Quelldateien aufteilen. Die Quelldateien enthalten einen Abschnitt der Definition der Klasse, und alle Teile werden beim Kompilieren der Anwendung kombiniert. Zum Aufteilen einer Klassendefinition müssen wir das partialSchlüsselwort verwenden.

Beispiel 1:

Wir haben ein Projekt mit dem Namen, HeightWeightInfodas Größe und Gewicht zeigt.

Wir haben eine Datei mit dem Namen File1.csmit einer Teilklasse mit dem Namen Record. Es hat zwei ganzzahlige Variablen h & w und eine Methode / einen Konstruktor namens Record, der die Werte von h & w zuweist.

 namespace HeightWeightInfo ( class File1 ( ) public partial class Record ( private int h; private int w; public Record(int h, int w) ( this.h = h; this.w = w; ) ) )

Hier ist eine andere Datei mit dem Namen File2.cs mit derselben Teilklasse Record, die nur die Methode PrintRecord enthält. Diese Methode zeigt die Werte von h & w an.

 namespace HeightWeightInfo ( class File2 ( ) public partial class Record ( public void PrintRecord() ( Console.WriteLine("Height:"+ h); Console.WriteLine("Weight:"+ w); ) ) )

Hier sehen wir jetzt die Hauptmethode des Projekts:

 namespace HeightWeightInfo ( class Program ( static void Main(string() args) ( Record myRecord = new Record(10, 15); myRecord.PrintRecord(); Console.ReadLine(); ) ) )

Hier haben wir das Objekt der Klasse Record als myRecord, das die Parameterwerte als 10 und 15 an h bzw. w an die in definierte Methode übergibt File1.cs.

Die Methode PrintRecord wird vom Objekt myRecord aufgerufen, das im definiert ist File2.cs.

Dies zeigt, dass das partialSchlüsselwort dabei hilft, alle Attribute einer Klasse, die in verschiedenen Dateien definiert sind, zu einer einzigen Klasse zu kombinieren.

Orte, an denen partialKlasse verwendet werden kann:

  1. Bei der Arbeit an größeren Projekten mit mehr als einem Entwickler können die Entwickler gleichzeitig an derselben Klasse arbeiten.
  2. Codes können der Klasse hinzugefügt oder geändert werden, ohne dass Quelldateien neu erstellt werden müssen, die automatisch von der IDE (dh Visual Studio) generiert werden.

Dinge, an die man sich bei Teilklassen erinnern sollte

Das partialSchlüsselwort gibt an, dass andere Teile der Klasse im Namespace definiert werden können. Es ist obligatorisch, das Schlüsselwort partiell zu verwenden, wenn wir versuchen, eine Klasse partiell zu machen. Alle Teile der Klasse sollten sich im selben Namespace befinden und zur Kompilierungszeit verfügbar sein, um den endgültigen Typ zu bilden. Alle Teile müssen denselben Zugriffsmodifikator haben, dh privat, öffentlich oder so weiter.

  • Wenn ein Teil als abstrakt deklariert wird, wird der gesamte Typ als abstrakt betrachtet.
  • Wenn ein Teil für versiegelt erklärt wird, gilt der gesamte Typ als versiegelt.
  • Wenn ein Teil einen Basistyp deklariert, erbt der gesamte Typ diese Klasse.
  • Alle in einer Teildefinition deklarierten Klassenmitglieder stehen allen anderen Teilen zur Verfügung.
  • Alle Teile einer Teilklasse sollten sich im selben Namespace befinden.

** Hinweis: Der partialModifikator ist für Delegaten- oder Aufzählungsdeklarationen nicht verfügbar

Einführung in partielle Methoden

Eine Teilklasse kann eine Teilmethode enthalten. Ein Teil der Klasse enthält die Signatur der Methode. Eine optionale Implementierung kann im selben Teil oder in einem anderen Teil definiert werden. Wenn die Implementierung nicht bereitgestellt wird, werden die Methode und alle Aufrufe zur Kompilierungszeit entfernt.

Beispiel 2:

Nehmen wir ein Beispiel als Teilklasse, Carin file1.csder drei Methoden definiert sind: InitializeCar (), BuildRim () und BuildWheels (). Unter diesen Methoden ist InitializeCar definiert als partial.

 public partial class Car ( partial void InitializeCar(); public void BuildRim() ( ) public void BuildWheels() ( ) )

Und wir haben eine andere Datei mit dem Namen, file2.csdie zwei Methoden BuildEngine und InitializeCar hat. Die Methode InitializeCar ist eine Teilmethode, die auch in definiert ist file1.cs.

 public partial class Car ( public void BuildEngine() ( ) partial void InitializeCar() ( string str = "Car"; ) )

Eine teilweise Methodendeklaration besteht aus zwei Teilen:

  1. Die Definition wie in file1.cs.
  2. Die Implementierung wie in file2.cs.

Sie können sich in separaten Teilen der Teilklasse oder im selben Teil befinden.

Dinge, an die Sie sich bei der Teilmethode erinnern sollten

  • partial Stichwort.
  • Rückgabetyp void .
  • implizit private.
  • und kann nicht sein virtual.

Interessante Beiträge...