-
C#中的Namespace详解(1)
- Namespace既名称空间,VS.NET中的各种语言使用的一种代码组织的形式,通过名称空间来分类,以区别不同的代码功能,同时也是VS.NET中所有类的完全名称的一部分。本文对C#中的Namespace进行了介绍,希望可以对初学者有所帮助。
我现在感到学好C#就是就是要知道C#的基本语法,C#的新的特点,C#能干什么!
其中我感到不管如何,NAMESPACE都是很关键的。可以说不是只对C#而言,而是整个.NET都是由NAMESPACE组成的。所以我在看了C#的基本语法后,就直奔NAMESPACE来了,在这里写下自己的一些感觉,希望能对后面学习的人有所帮助。
NAMESPACE在新的.NET环境下编程可以说是无所不在。总之,给我的感觉就是MS的新一代的语言的核心就是NAMESPACE,我们可以通过已经有的NAMESPACE,做我们想做的和愿意做的。当然如果你感觉现有的还不够你使用的话,你也可以自己来使用现有的来扩展,创建自己的NAMESPACE!(感觉怎么很象以前的COM、DCOM呢?)
如何建立一个NAMESPACE
定义一个NAMESPACE首先需要包含关键词:namespace
格式如下:
namespace Your_nsname
{
//namespase主体内容;
} |
呵呵,给我的感觉就好象和Class或Struct一样。不过它们除了形式有类似外,确实在很多方面都不相同。
在一个NAMESPACE的主体内,可以引用其他的NAMESPACE,例如:
namespace Your_nsname{
//下面引用System和System.Xml着两个NAMESPACE;
using System;
using System.Xml;
//namespase主体内容;
} |
在上面有一个需要注意的就是,如果要引用NAMESPACE的话,那么应该在申明其它类型前引用,如下是错误的:
namespace Your_nsname{
//其它一些内容;
//由于引用System和System.Xml放到了其它语句之后,所以。。。
using System;
using System.Xml;
} |
另外对于NAMESPACE还有一个有趣的地方,我们先看一下下面的的两个方式:
方式一:
namespace N1.N2
{ class A {}
class B {}
} |
方式二:
namespace N1
{
namespace N2
{
class A {}
class B {}
}
} |
在上面的两种方式中,第二种很容易就能看懂,是在NAMESPACE N1中再创建一个NAMESPACE N2,而N2中有两个类(class)A、B。那么第一种呢?其实上面两个方式定义的其实是一模一样的。NAMESPACE是可以嵌套定义的,我们可以使用第二种方式,层次感觉比较清楚,也可以使用第一种方式。所不同的是,第一中方式中,在N1和N2之间必须用分隔符“.”来表明他们两者之间的层次关系!
浙公网安备 33010602011771号