C# の名前空間の概要

C# では、名前空間は、プログラム内の関連するクラス、インターフェイス、その他の型を整理およびグループ化するために使用されます。これらは、名前の競合を回避し、コードを整理するための論理構造を作成する方法を提供します。この概要では、C# で名前空間がどのように機能するかを確認し、その使用法を説明するコード例を検討します。

C# での名前空間宣言

  • C# で名前空間を定義するには、'namespace' キーワードに続けて名前空間名を使用します。
  • 通常、名前空間は C# ファイルの先頭で宣言されます。
namespace MyNamespace
{
    // Code goes here...
}

名前空間内の型へのアクセス

  • 名前空間を定義すると、その中にクラスや他の型を含めることができます。
  • 名前空間から型にアクセスするには、完全な型名を使用するか、ファイルの先頭に 'using' ディレクティブを含めます。
using System;

namespace MyNamespace
{
    class Program
    {
        static void Main()
        {
            // Fully qualified name
            System.Console.WriteLine("Hello, world!");

            // Using directive
            Console.WriteLine("Hello, world!");
        }
    }
}

上記の例では、'System' 名前空間から 'Console' クラスにアクセスするには、それを として完全修飾します。 'System.Console' または、'System' のディレクティブ 'using' を追加しますファイルの先頭にあります。

ネストされた名前空間

名前空間を相互にネストして階層構造を作成することもできます。これは、関連するコードを整理するのに役立ちます。

namespace OuterNamespace.InnerNamespace
{
    class MyClass
    {
        // Code goes here...
    }
}

上の例では、'OuterNamespace' という外側の名前空間と、'InnerNamespace' という内側の名前空間があります。'MyClass' という名前の クラス が内部名前空間内で宣言されています。

複数の名前空間の使用

複数の名前空間の型を使用するには、ファイルの先頭に複数の 'using' ディレクティブを含めることができます。

using System;
using System.IO;

namespace MyNamespace
{
    class Program
    {
        static void Main()
        {
            string path = "example.txt";

            // Using types from different namespaces
            string contents = File.ReadAllText(path);
            Console.WriteLine(contents);
        }
    }
}

上の例では、名前空間 'System' と 'System.IO' の両方に 'using' ディレクティブがあります。これにより、'System.IO'{ の 'File' など、両方の名前空間の型を使用できるようになります。 'Console''System'から。

結論

名前空間は、C# でコードを編成および構造化する際に重要な役割を果たします。これらは、名前の競合を回避し、コードの読みやすさを向上させ、大規模なコードベースの管理を容易にするのに役立ちます。名前空間を効果的に使用すると、クリーンでモジュール式のコード構造を作成できます。