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

C# Partielle Klassen und Methoden verstehen

C# Partielle Klassen und Methoden verstehen

Dieser Artikel erklärt, wie und warum C# Entwickler partielle Klassen und partielle Methoden nutzen, um große Codebasen zu verwalten, effektiv zusammenzuarbeiten und Kompilierung zu optimieren.

Wenn mehrere Entwickler an einer einzelnen, umfangreichen Klasse arbeiten, oder wenn Sie handgeschriebenen Code mit Tool-generiertem Code (wie von Visual Studio) zusammenführen müssen, bietet C#'s partial Schlüsselwort eine saubere Lösung.


Was ist eine partielle Klasse?

Eine partielle Klasse erlaubt es, die Definition einer einzelnen Klasse auf zwei oder mehr Quelldateien aufzuteilen. Jede Datei enthält einen Teil der Klasse, und der Compiler fügt sie zur Build-Zeit zusammen. Das Schlüsselwort partial muss in jedem Teil der Klasse erscheinen.

Beispiel 1 – Einfache Klasse aufteilen

Betrachten Sie ein Projekt namens HeightWeightInfo, das Größe und Gewicht einer Person speichert.

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

Die gleiche Record Klasse wird in einer zweiten Datei fortgesetzt.

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

Schließlich sieht das Programm, das die Klasse nutzt, so aus:

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

Der Compiler führt die beiden Record Definitionen zu einer einzelnen Klasse zusammen, die sowohl den Konstruktor als auch die PrintRecord Methode enthält.

Wann partielle Klassen nutzen

  1. Große Projekte mit mehreren Entwicklern: Jedes Teammitglied kann eine separate Datei bearbeiten, ohne Konflikte.
  2. Auto-generierter Code: IDEs erstellen oft Dateien, die nicht manuell bearbeitet werden sollen; partielle Klassen erlauben benutzerdefinierte Logik ohne Modifikation des generierten Codes.

Wichtige Punkte


Was ist eine partielle Methode?

Eine partielle Methode ist ein spezieller Methodentyp, der in einem Teil einer partiellen Klasse deklariert und optional in einem anderen implementiert werden kann. Wird die Implementierung weggelassen, werden sowohl die Methodendeklaration als auch alle Aufrufe davon zur Kompilierzeit verworfen, was die Performance verbessern kann.

Beispiel 2 – Partielle Methoden nutzen

In file1.cs deklariert die Car Klasse eine partielle Methode und andere reguläre Methoden.

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

In file2.cs stellt die gleiche Car Klasse die Implementierung für InitializeCar bereit und fügt eine weitere Methode hinzu.

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

Partielle Methodendeklarationen bestehen aus zwei Teilen: der Signatur in einer Datei und der optionalen Implementierung in derselben oder einer anderen Datei.

Regeln für partielle Methoden

C Sprache

  1. C# Klassen & Objekte: Fundamente für robustes OOP
  2. C# Abstrakte Klassen & Methoden meistern: Praktischer Leitfaden
  3. Versiegelte Klassen und Methoden in C# meistern
  4. C++ Klassen & Objekte: Praktischer Leitfaden zur objektorientierten Programmierung
  5. C++ Friend-Funktionen und Friend-Klassen: Zugriffskontrolle meistern
  6. Java meistern: Objekte, Klassen und Kern-OOP-Konzepte verstehen
  7. C# Vererbung: Wiederverwendbaren & wartbaren Code erstellen
  8. C# Polymorphie: Statische vs. Dynamische Bindung
  9. ASTM A729 Klasse A: Doppel-normalisierter & vergüteter Stahl – Eigenschaften & Normen
  10. ASTM A649 Klasse 2: Normalisierter & vergüteter Stahl – Spezifikationen & Eigenschaften