1、什么是命名空间?

命名空间设计目的是提供一种让一组名称与其他名称分隔开的方式。在一个命名空间中声明的类的名称与另一个命名空间中声明的相同的类的名称不冲突。

我们举一个计算机系统中的例子,一个文件夹(目录)中可以包含多个文件夹,每个文件夹中不能有相同的文件名,但不同文件夹中的文件可以重名。

2、为什么要使用命名空间?

就像上面定义里说的, 在较大的项目中,开发人员有很多,我们的代码可能和其他开发者的代码使用相同的类名、接口名、函数或常量名,如果不使用命名空间,使用名称时会起冲突。而使用命名空间将代码放到唯一的厂商命名空间里,我们的代码就可以和其他开发者使用相同的类名、接口名、函数或常量名。

3、命名空间与类之间的区别?

个人感觉:类是对象数据和操作的封装,是一个封装体。而命名空间就像是承装封装体的盘子,可以盛放多个封装体。而不同的盘子里面可能放着相同命名的封装体,在调用时只要表明具体的命名空间,就不会导致命名冲突。

4、命名空间如何引入?

通过using关键字,常见的用法是:

using System;

using Namespace std;

......

5、采用using 关键字引入不同的命名空间,作用是什么?

引入命名空间就相当于引入包的作用,这样就可以使用其中的变量名和函数

比如用using namespace std,表示所有的标准库函数都在标准命名空间std中进行了定义。

6、列举C#中常用的命名空间

using System; 主命名空间,包含所有.net基础类型和通用类型,比如Object,比如string等等
using System.Collections; 集合命名空间,包含常用的如ArrayList等集合类
using System.Configuration; 配置命名空间,包含应用程序配置相关的类比如:ConfigurationManager
using System.Data; 数据命名空间,包含ado.net最基础的类型,比如DbConnection等
using System.Linq; 3.5引入的linq语法需要提供的支持类,主要包含了Enumerable扩展方法支持类
using System.Web; asp.net所需要的核心命名空间,包含诸如HttpRuntime等的基础运行环境类
using System.Web.Security; asp.net在角色验证和安全方面的类库,比较重要的是FormsAuthentication
using System.Web.UI.WebControls; 服务器控件,如GridView就是在这个里面
using System.Data;包含有关专门操作SqlServer数据库的类,如SqlConnection,SqlCommand,SqlDateAdapter等,而Oledb中则包含的是操作所有数据库的类
using System.Collections.Generic;泛型集合命名空间

代码举例 :

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();}
}

C#之基础4---①什么是命名空间,为什么要使用命名空间,命名空间与类的区别相关推荐

  1. 命名空间不能直接包含_php命名空间

    今天,刚好要写开源项目的后台数据了,所以学习了一下php的命名空间,收获多多,所以总结了一下这篇文章,好了,废话不多说,上代码吧 我们该如何命名空间呢? <?php // 使用命名空间的关键字n ...

  2. 未能在全局命名空间中找到类型或命名空间名称“Wuqi”

    下载了AspNetPager控件用以进行分页操作,在项目中放入控件后,运行报错:未能在全局命名空间中找到类型或命名空间名称"Wuqi" . 解决办法:在项目下拉框"引用& ...

  3. YiShaAdmin_项目的默认 XML 命名空间必须为 MSBuild XML 命名空间。如果项目是用 MSBuild 2003 格式---.Net_C#_若依.Net版Web框架使用及改造001

    下面是错误: C:\Users\Administrator\Desktop\YiShaAdmin\YiSha.Cache\YiSha.Cache.Factory\YiSha.Cache.Factory ...

  4. php命名空间非限定名称,PHP命名空间 - osc_nnp3dgfb的个人空间 - OSCHINA - 中文开源技术交流社区...

    1.概述 命名空间是PHP为了解决重名问题推出的机制,密码空间可以认为地将内存进行分隔,让不同内存区域的同名结构得以共存,类似操作系统中文件夹的概念 基础语法:namespace space_name ...

  5. 【硬件基础】个人感悟+C语言 引入头文件时引号括号的区别

    前言: 惊!一博主又在水博客 其实不然,单片机从大一下半年就已经开始自学,但是可能是由于高中养成的惰性思维,不愿意思考,只想靠时间来获得内心的满足感:看我今天又学了一天.其实,假用工学的那一天到赶不上 ...

  6. Python的零基础超详细讲解(第十三天)-Python的类与对象

    基础篇往期文章如下: Python的零基础超详细讲解(第一天)-Python简介以及下载 Python的零基础超详细讲解(第二天)-Python的基础语法1 Python的零基础超详细讲解(第三天)- ...

  7. python 命名空间冲突_通过修改命名空间绕过pb冲突

    背景 在实际工作当中,很多服务框架本身会依赖pb,但是和tf的pb会发生冲突[通常是因为pb比较老或者版本有冲突导致],所以本文介绍如何通过修改名空间的方式来绕过pb冲突. 修改名空间&编译p ...

  8. Python基础day07【文件读写、文件夹操作、面向对象(类、对象)】

    视频.源码.课件.软件.笔记:超全面Python基础入门教程[十天课程]博客笔记汇总表[黑马程序员]   目录 01.复习 1.1.递归函数参数问题 1.2.格式化输出位数 1.3.extend函数解 ...

  9. 什么是命名空间 为什么C++需要使用命名空间

    引言: 问题:学习过C,然后再学c++的人可能会这么问,我#include<iostream>之后,不就是把头文件拉进来了吗,而cin cout等函数不就是iostream.h里面的函数吗 ...

最新文章

  1. 开源项目贡献者_如何吸引新的贡献者加入您的开源项目
  2. Selenium 页面自动化测试 面试 问题汇总
  3. 当程序员产崽后...
  4. Dom Tree Node, Render Tree Node 结构
  5. ARM linux内核启动时几个关键地址【转】
  6. matlab作动态函数曲线图,[转载]Matlab中使用Plot函数动态画图方法总结
  7. Java,JavaFX的流畅设计风格进度栏
  8. Pi network到底怎么样?我们来深入剖析一下
  9. PNG,GIF,JPG的区别及如何选
  10. c语言定时器回调函数的参数,定时器的简单实现即回调函数的运用
  11. Visual Studio 2010旗舰版正式版序列号 - civilman的专栏 - 博客频道 - CSDN.NET
  12. 统计长整数n的各位上出现数字1、2、3 的次数
  13. Cortex-M0(3)---ARM Cortex-M0 异常与中断
  14. Restful 风格
  15. 为什么要远离色情信息(转载)
  16. 计算机数据库安全研究目的,浅论计算机数据库安全管理
  17. Python CT图像预处理——nii格式读取、重采样、窗宽窗位设置
  18. dns被劫持有什么现象?DNS是什么 dns被劫持了如何解决
  19. cannot find -lGL
  20. csharp基础练习题:符号计数【难度:1级】--景越C#经典编程题库,不同难度C#练习题,适合自学C#的新手进阶训练

热门文章

  1. VBA 入门进阶 实用小程序
  2. i米音标(赖世雄音标学习)——i米音标标准级
  3. rac管理 sqlserver_Oracle RAC管理及维护命令详解
  4. 听故事--114个儿童睡前小故事(全文+在线听)
  5. C++的创建命名管道(CreateNamedPipe)
  6. Uc的个人中心很奇葩
  7. Python爬虫实战批量下载高清美女图片,男生最爱的案例吧!
  8. finally在python中是什么意思_Python中的finally关键字
  9. linux环境变量和linux命令export
  10. 下载腾讯课堂回放视频