C#的命名空间
来源:互联网 发布:淘宝客培训骗局 编辑:程序博客网 时间:2024/05/21 17:06
C# 命名空间(Namespace)
命名空间的设计目的是提供一种让一组名称与其他名称分隔开的方式。在一个命名空间中声明的类的名称与另一个命名空间中声明的相同的类的名称不冲突。
定义命名空间
命名空间的定义是以关键字 namespace 开始,后跟命名空间的名称,如下所示:
namespace namespace_name{ // 代码声明}
为了调用支持命名空间版本的函数或变量,会把命名空间的名称置于前面,如下所示:
namespace_name.item_name;
下面的程序演示了命名空间的用法:
using System;namespace first_space{ class namespace_cl { public void func() { Console.WriteLine("Inside first_space"); } }}namespace second_space{ class namespace_cl { public void func() { Console.WriteLine("Inside second_space"); } }} class TestClass{ static void Main(string[] args) { first_space.namespace_cl fc = new first_space.namespace_cl(); second_space.namespace_cl sc = new second_space.namespace_cl(); fc.func(); sc.func(); Console.ReadKey(); }}
当上面的代码被编译和执行时,它会产生下列结果:
Inside first_spaceInside second_space
using 关键字
using 关键字表明程序使用的是给定命名空间中的名称。例如,我们在程序中使用 System 命名空间,其中定义了类 Console。我们可以只写:
Console.WriteLine ("Hello there");
我们可以写完全限定名称,如下:
System.Console.WriteLine("Hello there");
您也可以使用 using 命名空间指令,这样在使用的时候就不用在前面加上命名空间名称。该指令告诉编译器随后的代码使用了指定命名空间中的名称。下面的代码演示了命名空间的应用。
让我们使用 using 指定重写上面的实例:
using System;using first_space;using second_space;namespace first_space{ class abc { public void func() { Console.WriteLine("Inside first_space"); } }}namespace second_space{ class efg { public void func() { Console.WriteLine("Inside second_space"); } }} class TestClass{ static void Main(string[] args) { abc fc = new abc(); efg sc = new efg(); fc.func(); sc.func(); Console.ReadKey(); }}
当上面的代码被编译和执行时,它会产生下列结果:
Inside first_spaceInside second_space
嵌套命名空间
命名空间可以被嵌套,即您可以在一个命名空间内定义另一个命名空间,如下所示:
namespace namespace_name1 { // 代码声明 namespace namespace_name2 { // 代码声明 }}
您可以使用点(.)运算符访问嵌套的命名空间的成员,如下所示:
using System;using SomeNameSpace;using SomeNameSpace.Nested;namespace SomeNameSpace{ public class MyClass { static void Main() { Console.WriteLine("In SomeNameSpace"); Nested.NestedNameSpaceClass.SayHello(); } } // 内嵌命名空间 namespace Nested { public class NestedNameSpaceClass { public static void SayHello() { Console.WriteLine("In Nested"); } } }}
当上面的代码被编译和执行时,它会产生下列结果:
In SomeNameSpaceIn Nested
阅读全文
0 0
- c#的命名空间
- C# 的命名空间
- C#的命名空间
- C#常用的命名空间
- C#命名空间的使用
- c# MySqlConnection的命名空间
- C#处理带命名空间的XML
- C#的TeamSystem 命名空间报错
- C# 常用的命名空间及作用
- C# 使用Windows窗体的命名空间
- c# 读取带有命名空间的XML
- C#的命名空间和程序集
- C#命名空间、类型的别名管理
- C#与C++的命名空间
- 更改C#项目的命名空间名称
- C#控制台基础 MD5的命名空间
- C#命名空间 using的用法
- 浅谈C#命名空间的命名规范和习惯
- Nginx 关于日志切割
- 模板方法模式
- 常用正则表达式
- idea module 发布不能发布为web项目
- Caffe学习1 :ProtoBuffer
- C#的命名空间
- SSM基本搭建和定时任务的开启
- 关于iis 错误500
- Android 7.0 FileUriExposedException 解决(调用系统相机)
- Crashing Balloon
- Pandas中中括号和双中括号
- CentOS7.3下安装Cloudera Manager5.11.1
- mac 环境安装Libpng
- 数据结构中常见的树(BST二叉搜索树、AVL平衡二叉树、RBT红黑树、B-树、B+树、B*树)