C# 类 (10) - 命名空间NameSpace
2024-10-19 04:38:28
NameSpace
命名空间是一系列 类型的集合,比如很多方法,很多类,集合在一个空间(myspace)里,谁想用就先 using myspace,然后直接用
不using myspace的话,想用里面的某个方法 就得 myspace.methodA,得加上前缀
像上面这个这个,前缀太长了,层层索引,boring,我们在开头cs文件 using System.IO.File ,然后就可以直接ReadText(“test.txt”)了
为啥需要命名空间?
小项目无所谓,都放在一个文件里,相互调用,但是随着项目越来越大,最直观的就是分开做,每个命名空间分开文件夹,一目了然
而且vs 会自动把你定义在不同文件夹里的class 归属到对应的namespace里(文件夹名其实一般都默认是那个namespace名字)
.Net框架本身就是一个很好的例子,如果把所有的class都定义到一起,那简直要疯了,所以要分开做,以 system为根目录,层层分类
system.IO system.Net system.Net.Mail
命名冲突
前面在读文本文件的时候我们用到了File.ReadAllTxt 这里面有file这个类,我们也可以在myspace里也构造一个File class,散落在不同命名空间里的同样的类名不会冲突
但是 你如果 using 这两个namespace,这时候你再用File,编译器就不知道从哪个里面取了,这时候就要using一个(你用的最多的那个),剩下的那个用全路径去调用
使用”别名”
一个层层递进的方法,前缀太长了,我们可以把前面的命名空间给 赋值成一个别名,如上图,简化一下
最新文章
- var和dynamic的区别
- Set up Github Pages with Hexo, migrating from Jekyll
- lx:这么空!什么叫假大空 xy:那我做给你看
- android 禁止viewPager 滑动
- scanf与scanf_s
- DOS通讯录
- 通过命令行连接oracle数据库/进入sql plus
- 1.C语言关键字(auto break case char const swtich)
- 关于金额,重量等浮点数的数据库字段设计(用Int,Long代替浮点数计算)
- BNU Online Judge-34973-Liserious战队
- jquery ocupload一键上传文件应用
- hikey960编译记录
- SpringBoot微服务架构下的MVC模型总结
- ace-socket-reconnect
- 怎样打开U盘最安全
- 人类及其他物种基因组DNA之问
- javascript区域打印代码
- 使用 springmvc请求 返回 字符串时 ,中文出现乱码
- UIKit 框架之UITextView
- 在TFS 2013中选择一周中的工作日,例如增加星期日
热门文章
- MySQL索引性能分析
- 01-CentOS 8.1安装 Docker
- Qt QMenuBar和QMenu以及QAction巧妙的使用方法
- 让绝对定位的div居中
- 信息: TLD skipped. URI: http://java.sun.com/jstl/* is already defined解决方法
- (一)在Spring Boot应用启动之后立刻执行一段逻辑
- java-poi创建模板
- ajax带checkbox选择值到后台
- 6. Linux输入输出重定向
- Sqoop export参数updatemode两种模式updateonly和allowinsert区别