命名空间和程序集

目录

一、什么是命名空间

1. 命名空间的作用

 2. 命名空间跨文件伸展

3.嵌套命名空间 

 二、using指令

1. using命名空间指令

2. using别名指令

三、程序集的结构

1. 程序集标识符

2.强命名程序集


一、什么是命名空间

1. 命名空间的作用

  1. 命名空间是共享命名空间名的一组类和类型。
  2. 同一个命名空间中的每个类的名称不能相同。
  3. 命名空间名是一个字符串(字符串中可以使用点),它加在类名或类型名前面使用点分隔。

  1. 合理使用命名空间名称可以有效降低类名冲突。
  2. 命名空间名称可以是任何有效标识符。
  3. 命名空间名称中可以使用英文句号。

 

 2. 命名空间跨文件伸展

  1. 命名空间不是封闭的,可以在不同的源文件中声明相同的命名空间。
  2. 包含相同名称的命名空间的源文件可以被编译成同一个程序集。
  3. 包含相同名称的命名空间的源文件可以被编译成不同的程序集。

 

3.嵌套命名空间 

命名空间可以嵌套,但命名空间仍是互相独立的。

  1. 原文嵌套:直接把命名空间放在另一个命名空间内部。
  2. 分离的声明:声明时使用完全限定名来表示嵌套。

 二、using指令

using命名空间指令和using别名指令可以避免使用长长的命名空间的完全限定名。

  1. 它们必须放在源文件顶端,在任何类型声明之前。
  2. 它们应用于当前源文件中的所有命名空间。

1. using命名空间指令

格式:

举例:

  

2. using别名指令

using别名指令允许起一个别名给:命名空间或命名空间内的一个类型。

格式:

举例:

 

三、程序集的结构

 程序集的文件扩展名通常为.exe或.dll

程序集代码文件称为模块。含多个模块的程序集中一个文件是主模块,其余是次要模块。

1. 程序集标识符

 程序集标识符由4个组成部分,它们一起唯一标识了该程序集。

  1. 简单名:只是不带文件扩展名的文件名,也被称为程序集名或友好名称。
  2. 版本号:形式为MajorVersion.MinorVersion.Build. Revision,例如2.0.35.9。
  3. 文化信息:2~5个字符串,表示语言、国家、或地区。
  4. 公钥:128字节字符串,生产该程序集的公司唯一的。

2.强命名程序集

强命名程序集有一个唯一的数字标签,比没有强命名程序集安全

  1. 强名称唯一标识了程序集。
  2. 没有CLR安全组件来捕获更改,强命名程序集的内容不能改变。
  3. 强命名由编译器生成。

(注:本内容学习总结自《C#图解教程》)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.kler.cn/a/8117.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

160. 相交链表 ——【Leetcode每日一题】

160. 相交链表 给你两个单链表的头节点 headA 和 headB ,请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点,返回 null 。 图示两个链表在节点 c1 开始相交: 题目数据 保证 整个链式结构中不存在环。 注意&#xff0c…

CSS基础知识,必须掌握!!!

CSS基础知识Background(背景)CSS文本格式文本颜色文本对齐格式文本修饰文本缩进CSS中的字体字体样式字体大小CSS链接(link)CSS列表不同列表标项CSS列表项用图片作为标记CSS列表标记项位置CSS中表格(table)表…

Android:启动流程

Android启动流程 第一步:启动电源以及系统启动 当电源按下,引导芯片代码开始从预定义的地方(固化在ROM)开始执行。加载引导程序到RAM,然后 执行 第二步:引导程序 引导程序是在Android操作系统开始运行前的一个小程序。引导程序…

城乡供水一体化管控平台-农村供水监管平台-乡村振兴

建设方案 城乡供水一体化管控系统是运用云计算、大数据等信息化手段,借助在线监测设备,并依托“供水信息化平台”,实时感知供水系统的运行状态,实现对农村供水工程远程监控、在线监测、实时预警、智慧监管。 系统功能 水源地监测&…

聚类问题的算法总结

目录 一、K-means算法 1、算法原理 2、如何确定K值 3、算法优缺点 二、DBScan聚类 1、算法原理 2、处理步骤 3、算法优缺点 聚类代码实现 聚类算法属于无监督学习,与分类算法这种有监督学习不同的是,聚类算法事先并不需要知道数据的类别标签&am…

Nuxt中使用vuex管理组件信息通讯

首先 你手上要有一个Nuxt项目 然后 我们先来引入依赖 npm install vuex3 --save要指定一下版本 这样 我们的vuex就进来了 然后 Nuxt项目的根目录下一般就有一个 store 目录 是专门用来让我们建vuex环境的 在下面创建一个index.js 参考代码如下 import Vue from vue import V…

图像分割技术及经典实例分割网络Mask R-CNN(含基于Keras Python源码定义)

图像分割技术及经典实例分割网络Mask R-CNN(含Python源码定义) 文章目录图像分割技术及经典实例分割网络Mask R-CNN(含Python源码定义)1. 图像分割技术概述2. FCN与语义分割2.1 FCN简介2.2 反卷积2.2 FCN与语义分割的关系3. Mask …

一文看懂多模态大型语言模型GPT-4

文章目录前言什么是GPT-4GPT-4 VS GPT-3.5GPT-4与其他模型对比GPT-4视觉输入GPT-4局限性写在最后前言 近日,OpenAI发布了最新版的生成预训练模型GPT-4。据官方介绍,最新一代的模型是一个大模型,性能比CPT-3.5强悍很多,不仅仅是接…

设计模式之监听模式

本文将会介绍设计模式中的监听模式。   监听模式是一种一对多的关系,可以有任意个(一个或多个)观察者对象同时监听某一个对象。监听的对象叫观察者(Observer),被监听的对象叫作被观察者(Obser…

签订合同Signing a Contract

前言 加油 原文 签订合同常用会话 ❶ Do you have any comments on this clause? 你对这项条款有什么意见吗? ❷ We agree with the terms and conditions. 我们同意这些条款及条件。 ❸ Please check the draft of the contract. 请您好好检查合约内容。 ❹ Two origin…

TenserRT(一)模型部署简介

第一章:模型部署简介 — mmdeploy 0.12.0 文档 pytorch.onnx.export方法参数详解,以及onnxruntime-gpu推理性能测试_胖胖大海的博客-CSDN博客 我们来谈谈ONNX的日常 - Oldpan的个人博客 初识模型部署 训练:网络结构(深度学习框…

人人都能看懂的Spring源码解析,Spring如何解决循环依赖

人人都能看懂的Spring源码解析,Spring如何解决循环依赖原理解析什么是循环依赖循环依赖会有什么问题?如何解决循环依赖问题的根本原因如何解决为什么需要三级缓存?Spring的三级缓存源码走读Spring的三级缓存提前暴露getSingleton方法总结往期…

Leetcode653. 两数之和 IV - 输入二叉搜索树

题目链接 Leetcode653. 两数之和 IV - 输入二叉搜索树 easy 题目描述 给定一个二叉搜索树 root和一个目标结果 k,如果二叉搜索树中存在两个元素且它们的和等于给定的目标结果,则返回 true。 示例 1: 输入: root [5,3,6,2,4,null,7], k 9 …

JavaScript 解析Json字符串的性能比较分析代码

我们在使用AJAX来做服务器端和客户端交互的时候,一般的做法是让服务器端返回一段JSON字符串,然后在客户端把它解析成JavaScript对象。 解析时用到的方法一般是eval或者new function,而目前IE8和Firefox3.1又内置了原生的JSON对象&#xff08…

WeakTr阅读笔记

WeakTr: Exploring Plain Vision Transformer for Weakly-supervised Semantic Segmentation 论文链接 代码链接 本文研究了用于弱监督语义分割(WSSS)的普通ViT的特性。观察到不同的ViT注意头对不同的图像区域的关注:提出了一种基于权重的端到端估计注意头重要性的…

Spring销毁的几种实现

有这3种方法,但是程序执行完成并没有打印出来。一定要手动close.手动执行后会调用如下逻辑:org.springframework.context.support.AbstractApplicationContext#doCloseorg.springframework.context.support.AbstractApplicationContext#destroyBeansorg.…

【vSphere | Python】vSphere Automation SDK for Python Ⅵ—— VM Guest Processes APIs

目录12. VM APIs12.1 VM Guest Processes APIsProcesses 进程Operations 操作(1)List Guest Processes(2)Get Guest Processes(3)Create Guest Processes(4)Delete Guest Processes参…

实时决策系统中 OpenMLDB 的常见架构整合方式

OpenMLDB 提供了一个线上线下一致性的实时特征计算平台。对于如何在实际业务系统中整合 OpenMLDB,构建完整的机器学习平台,OpenMLDB 提供了灵活的支持。本文关注基于 OpenMLDB,在企业级业务系统中使用的常见架构。我们主要关注存储和计算两个…

青少年CTF训练平台-WEB-部分wp

这两天因为别人问了下题目.打开后,闲着没事,去做了两道题目。顺便发出来wp. Web签到 扫描发现备份文件 打开发现flag easyupload 直接上传,然后获取flag 木马地址,通过扫描目录发现。 PHP的后门 直接添加请求头 user-agentt: zerodiumsystem(‘cat /flag’); q1jun的小秘…

【Spring】4—声明式事务

⭐⭐⭐⭐⭐⭐ Github主页👉https://github.com/A-BigTree 笔记链接👉https://github.com/A-BigTree/Code_Learning ⭐⭐⭐⭐⭐⭐ 如果可以,麻烦各位看官顺手点个star~😊 如果文章对你有所帮助,可以点赞👍…
最新文章