您好,欢迎访问一九零五行业门户网

C# 命名空间(Namespace)

定义命名空间
命名空间的定义是以关键字 namespace 开始,后跟命名空间的名称,如下所示:
namespace namespace_name { // 代码声明 }
为了调用支持命名空间版本的函数或变量,会把命名空间的名称置于前面,如下所示:
namespace_name.item_name;
下面的程序演示了命名空间的用法:
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();   }}
当上面的代码被编译和执行时,它会产生下列结果:
inside first_space inside second_space
using 关键字
using 关键字表明程序使用的是给定命名空间中的名称。例如,我们在程序中使用 system 命名空间,其中定义了类 console。我们可以只写:
console.writeline (hello there);
我们可以写完全限定名称,如下:
system.console.writeline(hello there);
您也可以使用 using 命名空间指令,这样在使用的时候就不用在前面加上命名空间名称。该指令告诉编译器随后的代码使用了指定命名空间中的名称。下面的代码演示了命名空间的应用。
让我们使用 using 指定重写上面的实例:
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();   }}
当上面的代码被编译和执行时,它会产生下列结果:
inside first_space inside second_space
嵌套命名空间
命名空间可以被嵌套,即您可以在一个命名空间内定义另一个命名空间,如下所示:
namespace namespace_name1 {   // 代码声明   namespace namespace_name2   {     // 代码声明   }}
您可以使用点(.)运算符访问嵌套的命名空间的成员,如下所示:
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 voidmain(string[] args)   {      abc fc = new abc();      efg sc = new efg();      fc.func();      sc.func();      console.readkey();   }}
当上面的代码被编译和执行时,它会产生下列结果:
inside first_space inside second_space
更多c# 命名空间(namespace)。
其它类似信息

推荐信息