我们知道在一个文件夹下面是不能定义两个相同名字的文件那么在C#中也是一样的,引入命名空间的主要作用就是解决文件重名的问题。我们可以利用using 关键字加上命名空间的名字来引用在一个命名空间里已经定义好的方法。列如:我们想要在命名空间A中引用命名空间B中的method方法。
第一种方法。直接在命名空间A所在的文件的开始加上 using A这样在整个文件中均可以引用命名空间B中method方法。就好比我们在建立一个控制台应用程序时系统会自动用using关键字加入一些命名空间。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using B;//那么在整个范围内就可以引用B中的方法了
第二种方法就是在文件开始处 不利用using关键字加入命名空间 ,而是在具体要用某个方法时支出方法的“全路径”,即命名空间加上方法名。具体如下:B.method;这样也可以引用B命名空间中的method方法。
但是当我们在一个命名空间要频繁引用另一个命名空间的其他方法时用第一种方法非常的方便会给我们减少很多的的麻烦。
命名空间是允许嵌套的也就是在一个命名空间中可以再定义另一个命名空间。using System.Collections.Generic;这就是在System命名空间中嵌套定义了Collection命名空间,在Collection命名空间中定义了Generic命名空间。命名空间的嵌套定义只是逻辑上的,如果真是在一个命名空间下嵌套定义另一个命名空间会导致一个非常臃肿的命名空间。
以上是我对命名空间的理解,如有不妥之处请大家指出,大家取长补短相互学习,共同进步,向着黑马的大门一步步迈进!谢谢! |