
.NET 开发要点精讲
Mr.Devin
这个作者很懒,什么都没留下…
展开
-
第一章 数据类型趣谈
目录1 值类型与引用类型1.1 线程堆栈和托管堆1.2 引用类型变量的内存模型1.3 “=” 和 “==” 辨析1.4 装箱与拆箱2 说不尽的字符串3 数据类型的模板化——泛型1 值类型与引用类型1.1 线程堆栈和托管堆值类型:int、double、enum、struct引用类型:类、接口、数组、委托、String值类型变量与引用型变量的内存分配模型...原创 2019-05-09 15:26:35 · 298 阅读 · 0 评论 -
第十二章 Winform 框架
目录1 Win32 应用程序结构1.1 Windows 消息循环1.2 窗口过程1.3 创建基于 Win32 的单窗体应用程序1.4 创建基于 Win32 的多窗体应用程序2 .NET Winform 程序与传统 Win32 程序的关联3 Windows Forms 框架4 Winform 程序结构4.1 UI线程4.2 消息循环4.3 窗口过程5 ...原创 2019-05-10 10:45:44 · 1413 阅读 · 0 评论 -
第十一章 线程同步与并发访问共享资源
目录1 死锁与数据存取错误1.1 多线程程序中的 “死锁” 现象1.2 多线程引发的数据存取错误2 锁2.1 锁定共享资源 —— Monitor3 线程同步3.1 等待句柄3.2 使用互斥同步对象 Mutex3.3 管理多个共享资源 —— Semaphore3.4 线程同步事件类 —— EventWaitHandle4 线程池4.1 线程池简介4...原创 2019-05-10 10:25:33 · 1120 阅读 · 0 评论 -
第十章 多线程开发
目录1 线程的创建、启动和停止1.1 创建线程对象1.2 线程的启动、暂停和提前中止1.3 背景线程1.4 等待一个线程的完成2 Windows 操作系统线程调度策略2.1 线程状态2.2 线程优先级2.3 Windows 操作系统的抢先式线程调度策略3 向线程函数传送信息的方式3.1 添加 “外壳” 方法3.2 使用带参数的 Parameteriz...原创 2019-05-10 10:09:32 · 291 阅读 · 0 评论 -
第九章 进程与进程间通信
目录1 操作系统的进程与线程管理1.1 进程的创建与运行1.2 进程中的线程1.3 CLR 如何管理进程与线程2 进程的启动与终止2.1 进程启动2.2 中止一个进程3 进程间通信3.1 使用剪贴板在进程间传送对象3.2 使用 FileSystemWatcher 实现进程同步3.3 使用内存映射文件实现进程通信1 操作系统的进程与线程管理1.1 ...原创 2019-05-09 21:17:16 · 645 阅读 · 0 评论 -
第八章 异步编程模式
目录1 异步编程的必要性1.1 同步调用与异步调用1.2 基于委托的异步调用1.3 等待异步调用完成1.4 处理异步调用时的异常1.5 异步编程小结1 异步编程的必要性.NET 的异步编程技术主要分为两大块:“使用 IAsyncResult 的异步编程模式” 和 “基于事件的异步编程模式”1.1 同步调用与异步调用通常情况下,当我们调用方法 A 后,在 A ...原创 2019-05-09 18:24:39 · 352 阅读 · 0 评论 -
第七章 事件及事件驱动
目录1 .NET 事件处理机制的剖析与应用1.1 直观理解 “事件” 的概念1.2 事件与委托的关系1.3 .NET 事件实现机制剖析1.4 委托链表的分步调用1 .NET 事件处理机制的剖析与应用1.1 直观理解 “事件” 的概念事件建立于委托的基础之上。从面向对象角度来说,事件是由对象发出的消息,它是一个信号,通知其它对象有事情发生。例如,用户单击窗体上的某...原创 2019-05-09 18:15:09 · 502 阅读 · 0 评论 -
第六章 神奇的委托
目录1 委托的概念与使用1.1 委托概述1.2 委托链表1.3 委托的作用2 使用泛型委托2.1 自定义泛型委托与使用2.2 Func 系列委托2.3 Action 系列委托与 MethodInvoker2.4 Predicate委托3 匿名方法与 Lambda 表达式3.1 匿名方法揭秘3.2 奇特的 Lambda 表达式4 掌握回调的编程技巧...原创 2019-05-09 17:48:35 · 441 阅读 · 1 评论 -
第五章 程序集
目录1 程序集的基础知识1.1 程序集的生成与使用2 程序集与组件化开发2.1 组件的概念2.2 组件化开发方法及步骤2.3 组件化开发中的组件依赖性3 互操作程序集与本地类型3.1 .NET 互操作程序集1 程序集的基础知识1.1 程序集的生成与使用“程序集(Assembly)”是 .NET Framework 中基本的软件模块,它可以包含数目不限的类...原创 2019-05-09 17:20:30 · 304 阅读 · 0 评论 -
第四章 异常捕获与处理
目录1 .NET异常处理基础1.1 try、catch 和 finally1.2 异常基类 Exception2 应对程序运行时出现的异常2.1 捕获多种类型的异常1 .NET异常处理基础1.1 try、catch 和 finallyC#使用 try...catch...finally 关键字编写异常处理代码块。其代码框架如下:try{ // 可能引...原创 2019-05-09 17:14:58 · 388 阅读 · 0 评论 -
第三章 继承与多态
目录1 方法的重载、隐藏与重写辨析1.1 继承关系下的方法重载1.2 子类隐藏父类的方法1.3 方法重写与虚方法调用2 通过实例理解多态2.1 通过继承实现多态2.1 利用接口实现多态3 协变与逆变1 方法的重载、隐藏与重写辨析由于子类对象同时包含了父类和子类定义的所有公共方法,因此,子类方法与父类方法之间的关系可以概括为以下三种:扩充:父类中没有与子类...原创 2019-05-09 15:49:44 · 288 阅读 · 0 评论 -
第二章 字段、方法与属性
1 字段与属性的初始化方式汇总C#中类可以包含三种成员:字段(Field)方法(Method)属性(Property)其中,属性为字段的进一步封装。1.1 对象初始化方式假设我们定义一个类 Studentpublic class Student{ public string name; public int age;}我们可以通过采用以下方式直...原创 2019-05-09 15:36:52 · 923 阅读 · 0 评论 -
第十三章 跨线程访问可视化控件
目录1 细说 UI 线程2 跨线程访问可视化控件的基本方法2.1 可视化控件的 Invoke 和 BeginInvoke 方法如下由于可视化控件是由 “UI 线程” 创建的,而数据处理任务通常由其他一些线程执行,可将这些线程称为 “工作线程”,因此在用户界面上显示工作线程执行状态信息本质上是一个 “跨线程访问可视化控件” 的问题。1 细说 UI 线程在 Windows 应用...原创 2019-05-10 10:51:36 · 427 阅读 · 0 评论