宣告命名空間,組織型別
C# 程式設計大量使用命名空間的原因有兩個。 首先,.NET 會使用命名空間組織其多種類別,如下所示:
System.Console.WriteLine("Hello World!");
System 是命名空間,而 Console 是該命名空間中的類別。 您可以使用 using
關鍵字,如此就不需要完整名稱,如下列範例所示:
using System;
Console.WriteLine("Hello World!");
如需詳細資訊,請參閱 using 指示詞。
重要
.NET 6 的 C# 範本會使用最上層陳述式。 如果您已經升級至 .NET 6,您的應用程式可能與本文中的程式碼不相符。 如需詳細資訊,請參閱新 C# 範本會產生最上層陳述式一文
.NET 6 SDK 也針對使用下列 SDK 的專案新增了一組隱含 global using
指示詞:
- Microsoft.NET.Sdk
- Microsoft.NET.Sdk.Web
- Microsoft.NET.Sdk.Worker
這些隱含 global using
指示詞包含該專案類型最常見的命名空間。
如需詳細資訊,請參閱有關隱含 using 指示詞的文章
其次,宣告您自己的命名空間,將有助於在較大型的程式設計專案中控制類別和方法名稱的範圍。 請使用 namespace 關鍵字宣告命名空間,如下列範例所示:
namespace SampleNamespace
{
class SampleClass
{
public void SampleMethod()
{
System.Console.WriteLine(
"SampleMethod inside SampleNamespace");
}
}
}
命名空間的名稱必須是有效的 C# 識別碼名稱。
自 C#10 開始,您可以宣告該檔案中定義之所有型別的命名空間,如下列範例所示:
namespace SampleNamespace;
class AnotherSampleClass
{
public void AnotherSampleMethod()
{
System.Console.WriteLine(
"SampleMethod inside SampleNamespace");
}
}
此新語法的優點是較為簡單,可節省水平空間和大括弧。 可讓您的程式碼更容易讀取。
命名空間概觀
命名空間具有下列屬性:
- 命名空間可組織大型程式碼專案。
- 命名空間會使用
.
運算子分隔。 using
指示詞讓您不需要指定每個類別的命名空間名稱。global
命名空間是「根」命名空間:global::System
一律會參考 .NET System 命名空間。