说说C#中的命名空间

来源:互联网 发布:淘宝网男童羽绒服 编辑:程序博客网 时间:2024/05/29 13:42
命名空间
命名空间的声明:namespace 关键字用于声明一个命名空间。在命名空间的声明中不能包含任何访问修饰符。声明命名空间可以帮助控制类名称和方法名称的范围,防止命名冲突。
  命名空间是可以嵌套的。
  例如:
  namespace A  {    namespace B    {    }  }
       或者
  namespace A.B  {      }
两者是等效的。
命名空间的引用:
 使用using命令导入命名空间、或者通过完全的限定名。多数情况使用using是可以的。但是当两个命名空间存在相同类名时,怎么会导致编译时错误,
此时就需要使用完全限定名,还有一种办法就是使用using 为命名空间起别名。
  例如:  
  声明两个命名空间,都有相同的类Test。
  namespace A  {    public class Test    {    }  }  namespace B  {    public class Test    {    }  }
只是用一个命名空间的类,可以使用using指令,或者使用完全的限定名。
  例如:
  using A;  namespace C  {    class Program    {      static void Main(string[] args)      {          Test a=new Test(); // 等价于完全限定名  A.Test A = new A.Test();      }    }  }
如果同时使用A,B两个命名空间的Test类,就会报错  “Test”是“A.Test”和“B.Test”之间的不明确的引用
  using A;  using B;  namespace C  {    class Program    {      static void Main(string[] args)      {          Test a=new Test();       }    }  }
此时需要使用完全限定名来使用类Test。
  using A;  using B;  namespace C  {    class Program    {      static void Main(string[] args)      {          A.Test a=new A.Test();       }    }  }
这样就不会报错了。
0 0
原创粉丝点击