首页 > 编程语言 >C# 学习笔记 - 命名空间

C# 学习笔记 - 命名空间

时间:2023-07-02 21:11:31浏览次数:46  
标签:C# namespace System 笔记 空间 MyApplication 命名

命名空间

命名空间的存在是为了解决编译器无法处理的重名问题。举个例子:如果没有命名空间,你将无法创建一个名为 Console 的类,因为 .NET 已经在 System 命名空间中使用了这个名称。

命名空间采用如下方式进行定义:

namespace MyApplication
 {
     // The content to reside in the MyApplication namespace is placed here.
 }

.NET Framework 为提供了一个完整的命名空间层次结构,其中 System 通常是最常用的命名空间,命名空间内的数据是通过 . 操作符来引用的,例如:

System.Console.WriteLine("Hello, World!");

以上代码将会调用 System 命名空间中的 Console 类的 WriteLine 方法。

使用 using 关键字显式声明程序将会使用到的命名空间,后续引用命名空间中的元素时,可以不指定命名空间,编译器会自动在命名空间中查找对应元素,例如:

using System;
 
 namespace MyApplication
 {
   class MyClass
   {
     void ShowGreeting()
     {
         Console.WriteLine("Hello, World!"); // note how System is now not required
     }
   }
 }

命名空间是全局的,因此,一个 C# 源文件中的命名空间,和另一个 C# 源文件中的同名命名空间,其实是同一个命名空间,编译器会将两个同名命名空间下的元素视为同一命名空间下的元素。

Namespaces are global, so a namespace in one C# source file, and another with the same name in another source file, will cause the compiler to treat the different named information in these two source files as residing in the same namespace.

嵌套命名空间

命名空间可以嵌套,即可以在一个命名空间内部定义另一个命名空间,例如:

namespace CodeWorks
 {
     namespace MyApplication
     {
         // Do stuff
     }
 }

或者,也可以这样定义:

 namespace CodeWorks.MyApplication
 {
     // Do stuff
 }

标签:C#,namespace,System,笔记,空间,MyApplication,命名
From: https://www.cnblogs.com/snoopy1866/p/17521400.html

相关文章

  • VectorCAST软件的License 配置
     一、配置License服务进入VectorCAST安装目录(默认为C:\VCAST,如果在安装时修改了安装路径,在这里需要进入对应的安装目录),找到FLEXlm文件夹,将License文件复制到FLEXlm文件夹下面。运行lmtools.exe配置License服务。编辑 找到ConfigServices选项卡。编辑 Service......
  • 2022年AMC8数学竞赛题目及考点分析
     2022年AMC8数学竞赛题目及考点分析!1.选择题答题技巧❶ 特定值法➤ 当几何图形不是唯一确定时,可以假设某些特殊条件(例如某个特殊角度或者某条边长),然后再进行计算;➤ 题目中要求最大值或者最小值时,从最极端的情况开始考虑,此时往往假设变量中的一个取到其最值;➤......
  • 快速数论变换NTT学习笔记
    前言在这篇文章中我介绍了什么是\(\text{FFT}\),但是在文中我们也说了一嘴这玩意是有精度误差的,三角函数和复数导致我们不得不进行取整操作。只要毒瘤出题人原因,那就可以\(\text{HackFFT}\)。Tips:根据《NOI大纲》的内容,卡精度和卡常数通常是不允许的。所以\(\text{FFT}......
  • 开心档之C++ 数据封装
    C++数据封装所有的C++程序都有以下两个基本要素:**程序语句(代码):**这是程序中执行动作的部分,它们被称为函数。**程序数据:**数据是程序的信息,会受到程序函数的影响。封装是面向对象编程中的把数据和操作数据的函数绑定在一起的一个概念,这样能避免受到外界的干扰和误用,从而确......
  • activiti中的事件
    activiti中常见的事件按事件可以出现的位置可以分为开始事件、结束事件、边界事件、中间事件。按事件的类型分可以分为信号事件、消息事件、error事件,定时器事件按照事件的特性可以分为Catching事件和Throwing事件,Catching会一直等待被触发,Throwing事件会自动触发并反馈结果,......
  • 开心档之C++ 数据结构
    C++数据结构C/C++数组允许定义可存储相同类型数据项的变量,但是结构是C++中另一种用户自定义的可用的数据类型,它允许您存储不同类型的数据项。结构用于表示一条记录,假设您想要跟踪图书馆中书本的动态,您可能需要跟踪每本书的下列属性:Title:标题Author:作者Subject:类目Bo......
  • 提升性能的利器:深入解析SectionReader
    一.简介本文将介绍Go语言中的SectionReader,包括SectionReader的基本使用方法、实现原理、使用注意事项。从而能够在合适的场景下,更好得使用SectionReader类型,提升程序的性能。二.问题引入这里我们需要实现一个基本的HTTP文件服务器功能,可以处理客户端的HTTP请求来读取指......
  • Android:倒计时、定时器、定时执行次数使用笔记
    原文:https://blog.csdn.net/weixin_40420578/article/details/103876900一.倒计时(3、2、1)CountDownTimer() //一共3秒,每隔1秒执行一次 CountDownTimertimer=newCountDownTimer(3000,1000){ @Override publicvoidonTick(longmillisUntilFi......
  • C语言笔记:第10章 数组和指针
    数组:https://www.cnblogs.com/mjios/archive/2013/03/15/2961147.html指针:https://www.cnblogs.com/mjios/archive/2013/03/16/2963645.html ......
  • CF1753
    CF1753成功因为虚拟机炸了,重新写一遍此文。都是没有保存的错。A.MakeNonzeroSum由于Notethatitisnotrequiredtominimizethenumberofsegmentsinthepartition.。考虑每一段最小化……可以发现,每一段都可以划分为长度为1或2的段。于是考虑影响。只有长......