1 回答
TA贡献1827条经验 获得超7个赞
namespace可以理解为逻辑上的函数库(里面包含各类函数),与之对应的是assembly,属于物理上的函数库(即一个个DLL文件)。
namespace是有层次的,这就好象书的章节一样,这样在使用namespace中的类和对象时,就比较容易了。象下面这个例子:dim abc As System.IO.StreamReader,一看就知道这是把abc定义为system命名空间下的IO子空间中的StreamReader类。
由于各名字空间实际是保存在各程序集(assembly)中的,因此使用名字空间前需要先引用其所在的程序集。
根据需要也可写 import namespace,这样以后使用namesapce中的类和对象时可省略那一长串路径。比如刚才的例子可以写成这样:
import System.IO
dim abc as StreamReader
有了namespace后,同名的类和函数就被允许了,因为它们位于不同的namespace中,不会产生冲突!比如System.Web.UI空间下有TextBox类,而System.Windows.Forms空间下也有一个TextBox类,这两个类的名字完全一致(其实功用也差不多),但你在使用它们的时候,系统能够很好的分辨到底是哪一个,这就是namespace的关系!
当然,除了系统的namespace,开发者可以自己定义自己的namespace。其实当你编译一个解决方案时,系统也会用你的项目名称做名字,生成一个namespace,并把你的类(其实每个web页面就是一个类)都放在这个namespace下面!
- 1 回答
- 0 关注
- 461 浏览
添加回答
举报