C# Klassenkonstruktor

C# Klassenkonstruktor

Während wir in einer Programmiersprache arbeiten, erstellen wir viele Variablen und Funktionen im Code. Diese Funktionen und Variablen können von einem benutzerdefinierten Typ sein, und einige von ihnen sollen integriert sein. Eine integrierte Funktion, von der Sie möglicherweise gehört haben, ist die Konstruktorfunktion. Die Konstruktorfunktion ist die gleiche Titelfunktion wie der vom Klassenobjekt aufgerufene Klassentitel automatisch, wenn das Objekt erstellt wurde. Es wird im Allgemeinen im Code verwendet, um einige variable Werte direkt zu initialisieren. Der Konstruktor kann eine Standardkategorie ohne Parameter haben und eine parametrisierte Kategorie haben. Innerhalb dieses Leitfadens werden wir heute die Verwendung dieser beiden Konstruktoren in unseren C# -Codebeispielern diskutieren, die auf Ubuntu 20 implementiert sind.04. Beginnen wir mit dem Terminalstart und aktualisieren Sie Ihr System, bevor Sie über das "APT" -Paket etwas auf der Shell durchführen.

Beispiel # 01: Standardkonstruktor

Beginnen wir mit der Präsentation der Verwendung des Standardkonstruktors in der neuen Datei in Ubuntu 20.04. Versuchen Sie hierzu die ewige „Touch“ -Bemerkung von Ubuntus, um eine Datei zu generieren, die die “enthalten muss“.CS ”Erweiterung am Ende für C# -Programmierung. Die Datei wurde in unserem aktuellen Arbeitsverzeichnis erfolgreich gemäß dem Befehl "LS" generiert.

Öffnen Sie Ihre Datei im Home -Verzeichnis mit dem Texteditor für eine ansprechende und farbenfrohe Code -Anzeige wie unten. Wir müssen diesen Code mit der Verwendung des System-Namespace starten, was in fast jedem C# -Code für Allzweckfunktionen ein Muss ist. Als nächstes haben wir einen Klassennamen „Test“ gestartet und einen öffentlichen Konstruktor „test ()“ initialisiert, um einige Textnachrichten auf dem Bildschirm mit der Funktion writeLine () aus der Konsolenklasse des Namespace „System“ anzuzeigen. Dieser Konstruktor ist die Standardeinstellung, daher enthält er keine Parameter. Wir haben hier die main () -Treiberfunktion verwendet, was in jedem Programm ein Muss ist. Es verwendet die gleiche WriteLine () -Methode, um eine andere Anzeigemeldung auf dem Shell -Bildschirm anzuzeigen. Jetzt müssen Sie verstehen, dass wir den Konstruktor nicht ausführen können, ohne ein Objekt des „Tests“ der Klasse „Test“ zu erstellen. Wir haben also den Klassennamen verwendet, um das Objekt „OBJ“ ​​zu erstellen, gefolgt vom „neuen“ Initialisierer für Objekte. Wenn wir dieses Programm ausführen, die Konsole.Writeline () Funktionserklärung wird zuerst ausgeführt. Anschließend wird die Erstellung dieses Objekts die Konstruktorfunktion „testen“, um die Konsole auszuführen.Schreibeline () Erklärung.

Wenn wir zum Terminal zurückkehren, haben wir unser C# -Programm mit dem "MCS" C# Compiler auf Ubuntu 20 zusammengestellt.04. Die "EXE" -Datei für diese C# -Datei wurde in der Kompilierung gemäß der LS -Anweisung generiert. Wir haben diese "EXE" -Datei verwendet, um den c# kompilierten Code mit der MCS-Runtime auszuführen. Die MAIN () -Funktionszeichenfolge Meldung wurde angezeigt und dann die Konstruktor -Zeichenfolgennachricht.

Beispiel # 02: Konstruktor in einer anderen Klasse

Wir haben die Implementierung eines Konstruktors innerhalb derselben Klasse gezeigt, in dem das Objekt seiner Klasse erstellt wurde. Jetzt werden wir uns den Konstruktor mit dem Objekt seiner Klasse in einer anderen Klasse ansehen. Sie müssen dieselbe C# -Datei öffnen, um den Code zu aktualisieren. Hier haben wir zwei Klassen "Test" und "neu" verwendet.

Die Testklasse enthält den Standardkonstruktor "Test", während die neue Klasse eine Main () -Treiberfunktion für dieses Programm enthält. Wir haben die Funktion "WriteLine () der Klassenkonsole für den Namespace" System "verwendet, um einige Textnachrichten auf der Shell bei der Ausführung von Main () und der Konstruktor -Testfunktion anzuzeigen. Wir haben ein Objekt der Klasse „Test“ in der Haupt- () -Funktion der Klasse „neu“ erstellt.

Als nächstes haben wir diesen Code gespeichert und ihn zusammengestellt. Danach haben wir seine "Exe" -Datei auf der Shell mit der "Mono-Runtime" ausgeführt. Die Funktion main () wurde ausgeführt und ihre jeweilige Nachricht angezeigt. Danach wurde der Testklassenkonstruktor unter Verwendung des Objekts aufgerufen und seine String -Nachricht angezeigt.

Beispiel # 03: Standard VS. Parametrisierter Konstruktor

Der parametrisierte Konstruktor kann verwendet werden, um Variablen mit den von der Funktion main () oder vom Benutzer zur Laufzeit übergebenen Werten zu initialisieren. In diesem Programmcode haben wir eine einzelne Klasse „Test“ erstellt und zwei Variablen deklariert, ich.e., Ganzzahlvariable "Alter" und String -Variable "Name". Danach haben wir den Standardkonstruktor "Test" dieser Klasse ohne parametrische Werte implementiert. Es wird nur verwendet, um einige Nachrichten auf der Shell mithilfe der Funktion WriteLine () anzuzeigen. Danach haben wir einen parametrisierten Konstruktor -„Test“ definiert, der zwei Werte aus der MAIN () -Funktion () und initialisierte die Variablen „Alter“ und „Name“. Vorher wurde auch die einfache Nachricht angezeigt, dass die "Werte über den Konstruktor" mithilfe der Writeline () -Methode einstellen. Die benutzerdefinierte Funktion „show ()“ verwendet einfach die Variablen „Alter“ und „Name“ in seiner Anweisung writeLine (), um ihre Werte auf der Shell anzuzeigen. In seiner Main () -Methode haben wir einige Textnachrichten angezeigt und das Klassenobjekt erstellt. Wir haben dieses Objekt "OBJ" verwendet, um die Funktion "anzeigen" aufzurufen, um die Nachricht anzuzeigen. Wird dieses Programm in der Lage sein, den parametrisierten Konstruktor auszuführen?? Gehen wir zum Ausführungsteil über, um zu sehen, was passiert.

Nachdem wir die Codedatei mit MCS zusammengestellt und die EXE-Datei mit Mono-Runtime ausgeführt haben, haben wir die folgende Ausgabe. Die main () -Funktionszeichenfolge wurde angezeigt und der Standardkonstruktor wurde gemäß der Objekterstellung ausgeführt. Die Funktion show () wurde ausgeführt und Nullwerte im Gegenzug angezeigt. Dies liegt daran.

Lassen Sie uns dieses Problem beheben, indem wir unseren Code erneut aktualisieren. Wir haben den Parametern des Konstruktors der Klasse "Test" direkt einen Ganzzahl- und String -Wert zugewiesen, während wir ein Objekt "OBJ" erstellt haben. Danach wurde dasselbe Objekt verwendet, um die Funktion show () aufzurufen, um die Werte anzuzeigen.

Dieses Mal übersprang die Funktion main () die Ausführung des Standardkonstruktors und führte den parametrisierten Konstruktor durch, da die Werte zum Zeitpunkt der Objekterstellung an den Konstruktor übergeben wurden. Aus diesem Grund wurden auch die Werte von "Alter" und "Namen" -Variablen von der Methode show () unter Verwendung desselben Objekts "OBJ" der "Test" -Klasse angezeigt.

Wenn Sie beide Konstruktoren nacheinander ausführen möchten, müssen Sie verschiedene Objekte erstellen. Wir haben also ein Objekt "OBJ1" für den Standardkonstruktoraufruf und das Objekt "OBJ2" für den parametrierten Konstruktoraufruf und seinen zugewiesenen Wert erstellt. Da wir den Wert dem parametrisierten Konstruktor mithilfe des Objekts „OBJ2“ zugewiesen haben. Ansonsten wird es nicht funktionieren.

In der Codekompilierung und -ausführung wurde die Funktion main (), sowohl Konstruktornachrichten als auch die Funktion show () ausgeführt, wie unten gezeigt:

Abschluss

Innerhalb des Einführungsabsatzes des Artikels haben wir die Verwendung von Konstruktoren in der Programmierung zusammen mit ihren Typen erörtert. Wir haben auch diskutiert, wie sich eine Konstruktorfunktion von den normalen benutzerdefinierten oder integrierten Funktionen wie der Main () -Methode unterscheidet. Wir haben die Verwendung der Standard- und parametrisierten Konstruktoren anhand unserer Beispiele ausgearbeitet und ihren Vergleich klar erklärt. Darüber hinaus haben wir die einfachen und unterschiedlichen Möglichkeiten besprochen, beide Arten von Konstruktoren mithilfe der Klassenobjekte aufzurufen.