- 博客(11)
- 收藏
- 关注
原创 NET CLR via C#读书笔记 - 第十三章 接口
NET CLR via C#读书笔记 - 第十三章 接口1 接口基础介绍1.1 接口概念1.2 接口继承特点1.3 接口定义1.4 接口继承示例 1 接口基础介绍 1.1 接口概念 接口是对一组方法签名进行统一命名,但不提供任何实现,除此之外,接口还可定义事件,无参属性和有参属性(C#索引器),C#禁止接口定义任何静态成员和常量(CLR是允许的)。 CLR不支持多继承,接口可以看做是一种缩水版的多继承机制。 1.2 接口继承特点 凡是能够使用具名接口类型实例的地方,都能使用实现了接口的一个类型的实例。
2021-10-11 21:08:47
178
原创 NET CLR via C#读书笔记 - 第十二章 泛型
NET CLR via C#读书笔记 - 第十二章 泛型1 泛型简介2 开放类型和封闭类型3 泛型类型和继承4 泛型类型同一性5 可验证性和约束5.1 主要约束5.2 次要约束5.3 构造器约束5.4 泛型类型变量转型5.5 泛型类型变量设为默认值5.5 泛型类型变量与null比较5.6 两个泛型变量作比较5.7 不要将泛型类型变量作为操作数使用 1 泛型简介 泛型是另一种形式的“代码重用”,或者说“算法重用”。开发者可以定义好算法,排序,搜索,交换等,但是这些算法的数据类型却不会事先指定,而是由使用者
2021-09-26 21:19:41
221
原创 NET CLR via C#读书笔记 - 第十章 属性
NET CLR via C#读书笔记 - 第十章 属性1 无参属性1.1 无参属性代码1.2 无参属性说明1.3 AIP(自动实现的属性)1.3.1 AIP代码1.3.2 AIP优点与不足1.3.2.1 优点1.3.2.2 不足1.4 字段与属性的区别2 有参属性3 属性访问器性能 1 无参属性 1.1 无参属性代码 代码示例: public class Demo{ private string m_s; private int m_i; public string S{ get{retu
2021-09-15 14:47:00
182
原创 NET CLR via C#读书笔记 - 第九章 参数
NET CLR via C#读书笔记 - 第九章 参数1 可选参数和命名参数1.1 代码示例1.2 可选参数以及命名参数的规则和原则2 以引用方式传参3 可变数量的参数 1 可选参数和命名参数 1.1 代码示例 可选参数就是函数包含默认值得形参,命名参数是指调用方法的时候通过指定参数名称来传递实参,代码示例如下: public sealed class Demo{ //定义含有默认参数值的函数 其中x,s就是可选参数 public void dpFunc(int x = 0,string s = "
2021-09-15 10:20:38
172
原创 NET CLR via C#读书笔记 - 第八章 方法
NET CLR via C#读书笔记 - 第八章 方法1 实例构造器与引用类型(类)2 实例构造器和值类型(结构)3 类型构造器4 操作符重载方法5 转换操作符方法5.1 转换操作符方法描述5.2 转换操作符方法重载6 扩展方法7 分部方法 1 实例构造器与引用类型(类) ① 构造器是将类型实例初始化为良好状态的特殊方法。 ② 元数据表中名字为.ctor ③ 创建引用类型时,首先为实例的数据字段分配内存并将分配的内存字节初始化为0,其次初始化附加字段(类型对象指针和同步块索引),最后调用实例构造
2021-09-14 17:09:59
224
原创 NET CLR via C#读书笔记 - 第七章 常量和字段
NET CLR via C#读书笔记 - 第七章 常量和字段1 常量1.1 常量定义1.2 常量的特点和限制2 字段2.1 字段定义2.2 字段修饰符 1 常量 1.1 常量定义 常量是从值不变化的符号,定义常量符号时,值必须在编译阶段就确认,编译后常量将保存在程序集的元数据中。 1.2 常量的特点和限制 ① 只能定义编译器支持的基元类型的常量,定义非基元类型的常量,必须要将值设置为null(意义不大)。 ② 常量值永不改变,通常被视为类型的一部分(被视为静态成员,而不是实例成员)。 ③ 定
2021-09-14 14:59:22
147
原创 NET CLR via C#读书笔记 - 第六章 类型和成员基础
NET CLR via C#读书笔记 - 第六章 类型和成员基础1 类型成员1.1 类型成员一览2 类型的可见性3 类型成员的可访问性4 类型的分类4.1 静态类4.2 分部类,结构和接口5 组件,多态和版本控制5.1 C#关键字对其组件版本控制的影响5.2 CLR调用虚方法简述5.2.1 call和callvirt 1 类型成员 1.1 类型成员一览 成员 说明 常量 描述数据值恒定不变的符号。与类型关联,不与类型实例关联。 字段 描述只读或者可读写的数据值。字段可以是静态的(与类型关
2021-09-14 13:51:05
176
原创 NET CLR via C#读书笔记 - 第五章 基元,引用和值类型
NET CLR via C#读书笔记 - 第五章 基元,引用和值类型1 基元类型1.1 概念1.2 C#基元数据类型1.3 基元类型的相关知识点1.3.1 C#中允许基元类型执行安全的隐式转换1.3.2 checked和unchecked2 引用类型和值类型2.1 引用类型和值类型定义2.2 引用类型和值类型相关知识点 1 基元类型 1.1 概念 基元类型可以简单理解为编译器本身支持的数据类型 例如:System.Int32 a = new System.Int32(); //值默认初始化为0 由于
2021-09-13 17:09:48
184
原创 NET CLR via C#读书笔记 - 第一章 CLR执行模型
NET CLR via C#读书笔记 - CLR执行模型CLR执行模型1.1 CLR简介1.2 CLR执行模型1.2.1 将源代码编译成托管模块 CLR执行模型 1.1 CLR简介 CLR(Common Language Runtime(公共语言运行时))可以简单理解为是一个支持多种编程语言及多语言互操作,完整的高级虚拟机。 程序在运行的时候有着惊人数量的运行时依赖。每个有用的程序都需要某些运行时函数库,以便其能跟电脑的其它资源(如用户输入设备,磁盘文件,网络通信等)交互,同时程序也需要转换成计算机硬
2021-09-11 11:32:40
371
原创 NET CLR via C#读书笔记 - 第四章 类型基础
C#入门学习欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 欢迎使用Markdown编辑器 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdow
2021-09-06 23:10:23
166
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人