命名空间的设计目的是提供一种让一组名称与其他名称分隔开的方式。在一个命名空间中声明的类的名称与另一个命名空间中声明的相同的类的名称不冲突。

定义命名空间

命名空间的定义是以关键字 namespace 开始,后跟命名空间的名称。

using 关键字

using 关键字表明程序使用的是给定命名空间中的名称。


Console.WriteLine ("Hello there");


我们可以写完全限定名称:


System.Console.WriteLine("Hello there");


嵌套命名空间

命名空间可以被嵌套,即您可以在一个命名空间内定义另一个命名空间:


namespace namespace_name1  {    // 代码声明    namespace namespace_name2     {      // 代码声明    } }


您可以使用点(.)运算符访问嵌套的命名空间的成员。


using System; using SomeNameSpace; using SomeNameSpace.Nested;  namespace SomeNameSpace {     public class MyClass      {         static void Main()          {             Console.WriteLine("In SomeNameSpace");             Nested.NestedNameSpaceClass.SayHello();         }     }      // 内嵌命名空间     namespace Nested        {         public class NestedNameSpaceClass          {             public static void SayHello()              {                 Console.WriteLine("In Nested");             }         }     } }


In SomeNameSpace In Nested