2016-03-08 02:007480
这些东西是基础中的基础,基本上是本书都会讲这个。但是很多东西到处都有,所以只捡了以下的这些写下来。
关于类型的可见性和可访问性
也就是public,internal这种东西,但是还是有个东西要提一下,那就是友元程序集。
利用System.Runtime.CompilerServices中的InternalsVisibleTo这个特性,使得从友元程序集访问指定程序集的internal类型。(它的作用是通过给定公钥和友元程序集名称来访问internal方法与属性,其实就是为了让别的公司的人访问不了,而自己公司能访问。)
分部类
partial关键字可将一个类、结构或者接口的定义源代码分散到多个文件中。(如果这个类过大的话)
(其实在《重构》这本书中讲过,一个过大的类往往是需要重构的。可能你用partial这种方法解决反而掩盖了本身需要重构的问题)
partial是C#编译器阶段处理的时候就用到的,此时已然把几个partial类合在了一起。CLR对此功能一无所知。
关于虚方法
虚方法没有非虚方法调用快,过多的应用虚方法会降低性能。
定义类的原则
定义类时除非确定要将其作为基类,并允许派生类进行特化,否则应该显示指定sealed。
作者:韩子卢
出处:https://www.cnblogs.com/vvjiang/
本博客文章均为作者原创,转载请注明作者和原文链接。
出处:https://www.cnblogs.com/vvjiang/
本博客文章均为作者原创,转载请注明作者和原文链接。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构