知识大全 C# 语言规范--1.12 命名空间和程序集
Posted 空间
篇首语:读书是最好的学习。追随伟大人物的思想,是最富有趣味的一门科学。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 C# 语言规范--1.12 命名空间和程序集相关的知识,希望对你有一定的参考价值。
C# 语言规范--1.12 命名空间和程序集 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
除了依赖于几个系统提供的类(如 System Console) 到目前为止介绍的程序都是独立存在的 但更常见的情况是 实际的应用程序由若干不同的部分组成 每个部分分别进行编译 例如 企业级应用程序可能依赖于若干不同的组件 其中包括某些内部开发的组件和某些从独立软件供应商处购买的组件
命名空间和程序集有助于开发基于组件的系统 命名空间提供一个逻辑组织体系 命名空间既用作程序的 内部 组织体系 也用作 外部 组织体系(一种表示向其他程序公开程序元素的途径)
程序集用于物理打包和部署 程序集可以包含类型 用于实现这些类型的可执行代码以及对其他程序集的引用
有两种主要的程序集 应用程序和库 应用程序有一个主入口点 通常具有 exe 文件扩展名 而库没有主入口点 通常具有 dll 文件扩展名
为了说明命名空间和程序集的使用 本节再次以前面介绍的 hello world 程序为例 并将它分为两个部分 提供消息的类库和显示消息的控制台应用程序
这个类库仅含一个名为 HelloMessage 的类 示例
// HelloLibrary csnamespace Microsoft CSharp Introduction public class HelloMessage public string Message get return hello world ;
显示了名为 Microsoft CSharp Introduction 的命名空间中的 HelloMessage 类 HelloMessage 类提供一个名为 Message 的只读属性 命名空间可以嵌套 而声明
namespace Microsoft CSharp Introduction
仅是若干层命名空间嵌套的简写形式 若不简化 则应该像下面这样声明
namespace Microsoft namespace CSharp namespace Introduction
将 hello world 组件化的下一个步骤是编写使用 HelloMessage 类的控制台应用程序 可以使用此类的完全限定名 Microsoft CSharp Introduction HelloMessage 但该名称太长 使用起来不方便 一种更方便的方法是使用 using 命名空间指令 这样 使用相应的命名空间中的所有类型时就不必加限定名称 示例
// HelloApp csusing Microsoft CSharp Introduction;class HelloApp static void Main() HelloMessage m = new HelloMessage(); System Console WriteLine(m Message);
显示了一个引用 Microsoft CSharp Introduction 命名空间的 using 命名空间指令 这样 HelloMessage 就成为 Microsoft CSharp Introduction HelloMessage 的简写形式
C# 还允许定义和使用别名 using 别名指令定义类型的别名 当两个类库之间发生名称冲突时 或者当使用大得多的命名空间中的少数类型时 这类别名很有用 示例
using MessageSource = Microsoft CSharp Introduction HelloMessage;
显示了一个 using 别名指令 该指令将 MessageSource 定义为 HelloMessage 类的别名
我们已编写的代码可以编译为包含类 HelloMessage 的类库和包含类 HelloApp 的应用程序 此编译步骤的细节可能因使用的编译器或工具而异 使用 Visual Studio NET 中提供的命令行编译器时 用如下所列的命令
csc /target:library HelloLibrary cs csc /reference:HelloLibrary dll HelloApp cs
cha138/Article/program/net/201311/12679相关参考
C#语言规范--1.3变量和参数 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 变量表示存储位置
C#编码规范(一)命名约定与风格 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! (C#Codin
C++、Java与C#的命名规范总结 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 摘要由于在开
新手入门之VisualC#命名空间详解 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 命名空间提
C#语言规范--2.2.1文法表示法 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 词法文法和句
C#语言规范--1.14属性 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! C#是一种命令式语言
C#语言规范--1.9接口 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 一个接口定义一个协定实
C#语言规范--1.1开始 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! clothes经典性h
C#编程规范 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 一命名 用pascal规则来命名方
C#语言规范--1.11枚举 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 枚举类型声明为一组相