C#-Namespace
Namespaces sollen eine Möglichkeit bieten, eine Gruppe von Namen von anderen Namen zu trennen. Der Name einer in einem Namespace deklarierten Klasse steht nicht in Konflikt mit dem Namen derselben Klasse, die in einem anderen Namespace deklariert wurde.
Definieren Sie einen Namespace
Die Definition eines Namespace beginnt mit dem Schlüsselwort namespace , gefolgt vom Namen des Namespace, wie folgt:
namespace namespace_name { // 代码声明 }
Um aufzurufen Bei der unterstützten Namespace-Version einer Funktion oder Variablen wird der Name des Namespace vorangestellt, wie unten gezeigt:
namespace_name.item_name;
Das folgende Programm demonstriert die Verwendung des Namespace:
using System; namespace first_space { class namespace_cl { public void func() { Console.WriteLine("Inside first_space"); } } } namespace second_space { class namespace_cl { public void func() { Console.WriteLine("Inside second_space"); } } } class TestClass { static void Main(string[] args) { first_space.namespace_cl fc = new first_space.namespace_cl(); second_space.namespace_cl sc = new second_space.namespace_cl(); fc.func(); sc.func(); Console.ReadKey(); } }
Wenn der obige Code kompiliert und ausgeführt wird, werden die folgenden Ergebnisse erzeugt:
Inside first_space Inside second_space
using-Schlüsselwort
Das using-Schlüsselwort gibt an, dass das Programm einen Namen aus dem verwendet angegebenen Namensraum. Beispielsweise verwenden wir in unserem Programm den System-Namespace, der die Klasse Console definiert. Wir können einfach schreiben:
Console.WriteLine ("Hello there");
Wir können den vollständig qualifizierten Namen wie folgt schreiben:
System.Console.WriteLine("Hello there");
Sie können auch die using-Namespace-Direktive verwenden, müssen dies also nicht Setzen Sie es voran, wenn Sie es verwenden. Plus den Namespace-Namen. Diese Anweisung teilt dem Compiler mit, dass nachfolgender Code Namen aus dem angegebenen Namespace verwendet. Der folgende Code verzögert die Anwendung des Namespace.
Lassen Sie uns das obige Beispiel mit der using-Spezifikation umschreiben:
using System; using first_space; using second_space; namespace first_space { class abc { public void func() { Console.WriteLine("Inside first_space"); } } } namespace second_space { class efg { public void func() { Console.WriteLine("Inside second_space"); } } } class TestClass { static void Main(string[] args) { abc fc = new abc(); efg sc = new efg(); fc.func(); sc.func(); Console.ReadKey(); } }
Wenn der obige Code kompiliert und ausgeführt wird, erzeugt er die folgenden Ergebnisse:
Inside first_space Inside second_space
Verschachtelte Namespaces
Namespaces können verschachtelt sein, d. h. Sie können einen Namespace innerhalb eines anderen Namespace definieren, wie folgt:
namespace namespace_name1 { // 代码声明 namespace namespace_name2 { // 代码声明 } }
Sie können den Punkt (Der .)-Operator verwenden, um auf Mitglieder eines verschachtelten Namespace zuzugreifen wie folgt:
using System; using first_space; using first_space.second_space; namespace first_space { class abc { public void func() { Console.WriteLine("Inside first_space"); } } namespace second_space { class efg { public void func() { Console.WriteLine("Inside second_space"); } } } } class TestClass { static void Main(string[] args) { abc fc = new abc(); efg sc = new efg(); fc.func(); sc.func(); Console.ReadKey(); } }
Wenn der obige Code kompiliert und ausgeführt wird, werden die folgenden Ergebnisse erzeugt:
Inside first_space Inside second_space
Das Obige ist der Inhalt von [c#-Tutorial] C#-Namespace (Namespace ). Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php.cn)!