在 C# 中,命名空間用於組織許多類,以便非常輕鬆地處理應用程式。這有助於將一組名稱與另一組名稱分開。一個命名空間中聲明的類別名稱不能與另一個命名空間中聲明的相同類別名稱發生衝突。它允許使用群組中的分層系統系統地組織代碼。分層系統可用於定義嵌套名稱空間。您可以透過將程式碼放置在不同的命名空間中來使程式碼保持井井有條。
命名空間是一個描述性區域,其中標識符(類型名稱、功能、變數等)被賦予一個範圍。命名空間用於將程式碼排列成邏輯組並防止名稱衝突,特別是當您的程式碼庫中包含各種庫時。
在 C# 中,根命名空間被視為全域命名空間。 global::System 定義了.Net Framework 的命名空間「System」。 System.console 可以在 C# 程式中使用。 System可以被定義為命名空間,而Console可以被視為一個類別。預設情況下,.NET Framework 提供了大量的命名空間來輕鬆實作應用程式。
命名空間有一些屬性如下:
命名空間可以透過使用關鍵字namespace後接namespace_name來定義。以下語法描述如何在 C# 程式語言中定義命名空間:
namespace namespace_name { // body of namespace }
範例:
namespace my_program_demo { class demo { public void myfunction() { // your code declarations } } }
在上面的程式碼片段中,my_program_demo是一個命名空間,它包含一個類別demo作為其成員,myfunction()是demo類別的一個方法。
命名空間的類別可以透過使用關鍵字來訪問,該關鍵字指定程式在給定命名空間中使用的名稱。此關鍵字提供對要在 .NET 應用程式中使用的相關類別和方法的存取。 using 關鍵字允許使用類別而無需定義命名空間。
在c#中,您也可以使用點運算子存取命名空間的成員。 (命名空間_名稱.成員_名稱)
範例:
using System; namespace Demo { class DemoExample { static void Main(string[] args) { Console.WriteLine("Welcome to C# namespace..."); Console.ReadKey(); } } }
執行程序的步驟:
範例:
using 關鍵字: 下面的範例指定了 using 關鍵字的用法。
using System; using first_demo; using second_demo; namespace first_demo { class myclass { public void func1() { Console.WriteLine("Helloworld....."); } } } namespace second_demo { class myclass1 { public void func2() { Console.WriteLine("Welcome to EDUCBA....."); } } } class DemoClass { static void Main(string[] args) { myclass cls = new myclass(); myclass1 cls1 = new myclass1(); cls.func1(); cls1.func2(); Console.ReadKey(); } }
編譯並執行上面的程式碼,你將得到如下圖所示的結果。
巢狀命名空間:建立巢狀命名空間的語法如下
namespace NamespaceDemo { namespace NestedNamespace { // code for nested namespace } }
The below example shows usage of nested namespaces: The members of a nested namespace can be accessed by using dot (.) operator:
using System; using first_demo; using first_demo.second_demo; namespace first_demo { class myclass { public void func1() { Console.WriteLine("Helloworld....."); } } namespace second_demo { class myclass1 { public void func2() { Console.WriteLine("This is example of nested namespace....."); } } } } class NestedNamespaceDemo { static void Main(string[] args) { myclass cls = new myclass(); myclass1 cls1 = new myclass1(); cls.func1(); cls1.func2(); Console.ReadKey(); } }
Compile and execute the above code, and you will get the result as shown in the image below:
以上是C# 中的命名空間的詳細內容。更多資訊請關注PHP中文網其他相關文章!