Externe Dateien
Teil des Abschnitts Objektorientierte Programmierung der C#-Journey von Coddy — Lektion 1 von 70.
Externe Dateien ermöglichen es Ihnen, Ihre Klassen in separaten C#-Dateien zu organisieren und sie in Ihrem Hauptprogramm unter Verwendung von Namespaces zu referenzieren.
Erstellen Sie eine separate C#-Datei namens MyClass.cs
namespace MyApp
{
public class MyClass
{
public string Name { get; set; }
public MyClass(string name)
{
Name = name;
}
public string Greet()
{
return $"Hello, I'm {Name}";
}
}
}Referenzieren Sie den Namespace in Ihrer Hauptdatei
using MyApp;Erstellen Sie eine Instanz und verwenden Sie diese
MyClass obj = new MyClass("Alice");
Console.WriteLine(obj.Greet());Ausgabe:
Hello, I'm AliceDie using MyApp;-Anweisung ermöglicht es Ihnen, Klassen aus dem MyApp-Namespace zu verwenden, ohne sie vollständig zu qualifizieren. Der Namespace gruppiert verwandte Klassen, und Klassen müssen public sein, um aus anderen Dateien zugänglich zu sein.
Aufgabe
MittelDir werden C#-Dateien (MyClass.cs und Program.cs) gegeben; füge eine using-Anweisung in der Datei Program.cs hinzu, um die Dateien zu verbinden und die Klasse aus der externen Datei zu verwenden!
Spickzettel
Externe Dateien ermöglichen es Ihnen, Klassen in separaten C#-Dateien zu organisieren und sie mithilfe von Namespaces zu referenzieren.
Erstellen Sie eine separate C#-Datei mit einem Namespace:
namespace MyApp
{
public class MyClass
{
public string Name { get; set; }
public MyClass(string name)
{
Name = name;
}
public string Greet()
{
return $"Hello, I'm {Name}";
}
}
}Referenzieren Sie den Namespace in Ihrer Hauptdatei mithilfe der using-Anweisung:
using MyApp;Erstellen Sie eine Instanz und verwenden Sie diese:
MyClass obj = new MyClass("Alice");
Console.WriteLine(obj.Greet());
// Ausgabe: Hello, I'm AliceKlassen müssen public sein, um von anderen Dateien aus zugänglich zu sein. Die using-Anweisung ermöglicht es Ihnen, Klassen aus einem Namespace zu verwenden, ohne sie vollständig qualifizieren zu müssen.
Probier es selbst
// TODO: Ersetzen Sie das ? durch den korrekten Namespace, um MyClass zu verwenden
using ?;
using System;
class Program
{
static void Main()
{
string testCase = Console.ReadLine();
// Erstellen Sie eine Instanz von MyClass und rufen Sie GetMessage() auf
MyClass obj = new MyClass();
Console.WriteLine(obj.GetMessage());
}
}Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Objektorientierte Programmierung
1Grundlagen der OOP
Externe DateienNamespaces & DirektivenEinführung in Klassen & ObjekteDas 'this'-SchlüsselwortMethoden und ParameterFelder vs. EigenschaftenKonstruktorenObjekt-InitialisiererZusammenfassung - Einfacher Taschenrechner4Vererbung
Grundlagen der Vererbung (:) SyntaxDas 'base'-SchlüsselwortVirtual & Override SchlüsselwörterVersiegelte KlassenDie 'object'-BasisklasseZusammenfassung – Mitarbeiter-Hierarchie7Fortgeschrittene Funktionen
OperatorüberladungIndexer (this[])ToString() überschreibenErweiterungsmethodenZusammenfassung - Benutzerdefinierte Liste2Eigenschaften & Statische Member
Automatisch implementierte EigenschaftenRead-Only- & Write-Only-EigenschaftenStatische Felder & MethodenStatische KlassenExpression-Bodied Member5Polymorphismus & Interfaces
Compile- vs. Runtime-PolymorphismusInterface vs. abstrakte KlasseMehrfache InterfacesExplizite InterfacesUpcasting & DowncastingRecap – Shape Calculator3Klassenarchitektur
Instanz- vs. statische Daten'readonly' & 'const' SchlüsselwörterBacking FieldsZusammenfassung - Bankkonto-Manager6Kapselung
ZugriffsmodifikatorenProperties zur KapselungImplementierung von Data HidingImmutability-MusterRückblick – Studierendendaten