C#高级编程(第九版) 知识点梳理
---恢复内容开始---
第二章 核心C#
2.7 命名空间可以使用别名,但是这样做有什么好处?
2.12 C#预处理器指令
#define DEBUG
#if DEBUG
Console.WriteLine("hahaha...");
#endif
---恢复内容结束---
第二章 核心C#
2.7 命名空间可以使用别名,但是这样做有什么好处?
2.12 C#预处理器指令
#define DEBUG
#if DEBUG
Console.WriteLine("hahaha...");
#endif
第七章
运算符重载 关键字 operator
第八章 委托
委托的好处:
1.相当于用方法作为另一方法参数(类似于C的函数指针)
2.在两个不能直接调用的方法中作为桥梁,如:在多线程中的跨线程的方法调用就得用委托
3.当不知道方法具体实现什么时使用委托,如:事件中使用委托
第13章 异步编程
13.3.5 异步编程 多个异步方法并行
Task<T> task1= MethodAsync(new T());
Task<T> task2= MethodAsync(new T());
awit Task.WhenAll(task1,task2);
当任务之间不存在依赖关系时,可以并发
第14章 内存管理和指针
托管代码自动执行垃圾回收
非托管代码需要自己实现垃圾回收
指针:了解一下
第15章 反射
15.2 自定义特性
System.Attribute 特性类
[AttributeUsage(AttributeTargets.Property,AllowMultiple=false,Inherited=false)] 自定义特性时需要增加此特性的使用范围
public class SelfdefineAttribute:Attribute 声明的自定义特性类必须继承Attribute
15.3 反射
System.Type 抽象基类:主要是获取实例的数据类型
System.Reflection.Assembly
第16章 错误和异常
System.Exception
try{}catch(){}finally{}
一般在finally释放资源
第19章 程序集
程序集:dll或者exe文件
第20章 诊断
(1)代码协定
NuGet:Code Contracts Editor Extensions
System.Diagnostics.Contracts
前提条件,后置条件:必须放在方法开头
(2)跟踪
TraceSource类
暂时不太明白跟踪的意义在哪里?定位程序报错的位置?
(3)事件日志
第21章 任务、线程和同步
System.Threading
System.Threading.Tasks
任务并行性和数据并行性:
Parallel类
Parallel.For 循环 数据并行性 P560示例
Parallel.Invoke() 任务并行性
为了更好的控制并行动作,可以使用Task类,创建的是后台线程
一般任务使用线程池,但也有长时间运行的任务需要单独创建线程
任务最新形式:Task.Run( () => "OK" );
连续任务:ContinueWith()
如果需要更多控制,使用 Thread类创建前台线程
前台线程和后台线程唯一区别就是:应用程序必须运行完所有的前台线程才可以退出
21.7线程问题
争用条件和死锁
lock(object){}
21.8 同步
为了解决死锁问题
lock语句 主力
Interlocked类 用于变量
Monitor类
第22章 安全性
IIdentity接口
IPrincipal接口
System.Security.Cryptography 加密的名称空间
第24章 文件和注册表操作
暂时跳过
第25章 事务处理
System.Transactions
TransactionScope scope = new TransactionScope();
scope.Complete();
System.EnterpriseServices 自动事务处理
优点:多个对象运行在同一个事务中
缺点:需要COM+主机模型,使用这个技术的类必须派生自基类 ServicedComponent
隔离级别:
(1)脏读
(2)不可重复读
(3)幻读
第26章 网络
C#高级编程(第九版) 知识点梳理的更多相关文章
- Python高级编程第二版--笔记
不只是CPython Stackless Python Jython(与java集成) IronPython(与net集成) PyPy python真正出众的领域在于围绕语言打造的整个生态系统. Py ...
- Linux&c 文件操作,线程进程控制,网络编程,简单知识点梳理
一:文件操作 在linux下,一切皆文件,目录是文件,称为目录文件,内容是该目录的目录项(但是目录只有内核可以编辑,超级用户也不可以编辑),设备也是设备文件,在/dev存放的就是一些设备文件,linu ...
- Linux&c 文件操作,线程进程控制,网络编程,简单知识点梳理
一:文件操作 在linux下,一切皆文件,目录是文件,称为目录文件,内容是该目录的目录项(但是目录只有内核可以编辑,超级用户也不可以编辑),设备也是设备文件,在/dev存放的就是一些设备文件,linu ...
- UNIX环境高级编程第二版代码笔记
1. 第一个程序 gcc 1.1.c /tmp/ccbnJqcB.o: In function `main': 1.1.c:(.text+0x17): undefined reference to ...
- 【读书笔记】C#高级编程 第九章 字符串和正则表达式
(一)System.String类 System.String是一个类,专门用于存储字符串,允许对字符串进行许多操作.C#提供了关键字string和相关的语法,以便使用这个类更轻松. 例子: 使用运算 ...
- C#高级编程笔记之第三章:对象和类型
类和结构的区别 类成员 匿名类型 结构 弱引用 部分类 Object类,其他类都从该类派生而来 扩展方法 3.2 类和结构 类与结构的区别是它们在内存中的存储方式.访问方式(类似存储在堆上的引用类型, ...
- C#高级编程笔记之第二章:核心C#
变量的初始化和作用域 C#的预定义数据类型 流控制 枚举 名称空间 预处理命令 C#编程的推荐规则和约定 变量的初始化和作用域 初始化 C#有两个方法可以一确保变量在使用前进行了初始化: 变量是字段, ...
- 《UNIX环境高级编程》源码配置——apue.3e 安装
转载从:http://blog.csdn.net/songshimvp1/article/details/51440545 网上大都是针对UNIX高级编程第二版的头文件搭建,现在对于第三版来说有些过时 ...
- ASP.NET MVC 4高级编程(第4版)
<ASP.NET MVC 4高级编程(第4版)> 基本信息 作者: (美)Jon Galloway Phil Haack Brad Wilson K. Scott All ...
- 解读经典《C#高级编程》第七版 Page38-45.核心C#.Chapter2
前言 控制流是语言中最基础的部分,我们不谈具体的细节,只讲讲一些关键和有趣的点. 01 流控制 条件语句:if, else if, else if语句的使用非常值得细讲,如何是好的使用习惯.有一点非常 ...
随机推荐
- 030-IHttpModule
MyHttpModule.cs public class MyHttpModule : IHttpModule { public void Dispose() { } public void Init ...
- Fiddler抓包【1】_介绍及界面概述
一. 主要抓包工具介绍与对比 1.Wireshark :通用抓包工具,抓取信息量庞大,需要过滤才能得到有用信息,只抓HTTP请求有点大财小用. 2.Firebug.HttpWatch等Web调试工 ...
- vue组件弹窗
定义弹窗组件 先写一个普通的vue组件,其显示的内容就是弹窗的内容. 文件的位置 /src/views/toast/toast.vue <template> <div class=& ...
- 福州大学软件工程1916|W班 第5次作业成绩排名
1. 作业链接: https://edu.cnblogs.com/campus/fzu/SoftwareEngineering1916W/homework/2768 2. 评分准则: 本次作业评分分为 ...
- Ubuntu16.04安装Redis
前言 Redis是常用基于内存的Key-Value数据库,比Memcache更先进,支持多种数据结构,高效,快速.用Redis可以很轻松解决高并发的数据访问问题:作为实时监控信号处理也非常不错. 环境 ...
- 项目遇到的小问题(关于vue-cli中js点击事件不起作用和iconfont图片下载页面css样式乱的解答)
第一个:关于vue-cli中js点击事件不起作用 在vue的methods方法queryBtnFun()中拼接html和click操作事件的时候,发现点击事件一起未起作用: 后来发现是DOM执行顺序 ...
- flask 异步发送邮件
异步发送邮件 当使用SMTP的方式发送电子邮件时,如果你手动使用浏览器测试程序的注册功能,在提交注册表单后,浏览器会有几秒钟的不响应.因为这时候程序正在发送电子邮件,发信的操作阻断了请求--响应循环, ...
- liunx驱动----异步通知
查询:消耗资源 中断:read 一直要去读 poll :指定起始时间 异步通知 signal 测试程序 include <stdio.h> include <signal.h> ...
- The absolute uri: http://java.sun.com/jsp/jstl/core cannot be resolved in either web.xml or the jar files deployed with this application问题解决方案参考
错误信息:The absolute uri: http://java.sun.com/jsp/jstl/core cannot be resolved in either web.xml or the ...
- [Python数据挖掘]第5章、挖掘建模(上)
一.分类和回归 回归分析研究的范围大致如下: 1.逻辑回归 #逻辑回归 自动建模 import pandas as pd from sklearn.linear_model import Logist ...