C# 名称空间 (逻辑组合)

与文件或组件不同,名称空间是一种逻辑组合, 而不是物理组合。 在c#文件中定义类时, 可以把它包括在名称空间定义中。

以后, 在定义另一个类时, 就可以在同一个名称空间中包含它, 创建一个逻辑组合,该组合告诉使用类的其他开发人员,这两个

类是如何相关的以及如何使用它们的:

namespace CustomerPhoneBookApp
{
    public struct Subvscriber
    {
        // Code for struct here...
    }
}

把一个类型放在名称空间中, 可以有效地给这个类型指定一个较长的名称, 该名称包括类型的名称空间, 名称空间之间用

句点(.) 隔开, 最后是类名。 在上面的例子中, Subscriber 结构的全名是 CustomerPhoneBookApp.Subscriber. 这样有相同

短名的不同类就可以在同一个程序中使用了。 全名常常称为完全限定的名称。

也可以在名称空间中嵌套其他命名空间, 为类型创建层次结构:

namespace Wrox
{
    namespace ProCSharp    
    {
        namespace Basics
        {
            class NamespaceExample
            {
                // Code for the class here...
            }
        }
    }
}

每个名称空间名都由它所在名称空间的名称组成, 这些名称用句点分隔开, 开头是最外层的名称空间, 最后是它自己的短名。

所以 ProCSharp 名称空间的全名是 Wrox.ProCSharp ,   

NamespaceExample 类的全名是 Wrox.ProCSharp.Basics.NamespaceExample 。

使用这个语法也可以在自己的名称空间定义中组织名称空间, 所以上面的代码也可以写为:

namespace Wrox.ProCSharp.Basics
{
    class NamespaceExample
    {
        // Code for the class here...    
    }
}

名称空间与程序集无关。 同一个程序集中可以有不同的名称空间, 也可以在不同的程序集中定义同一个名称空间中的类型。

应在开始一个项目之前就计划定义名称空间的层次结构。 一般可接受的格式是 CompanyName.ProjectName.SystemSection。

所以在上面的例子中, Wrox 是公司名, ProCSharp 是项目, 对于本章 Basics 是部分名。

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值