FPS 每分钟刷新率
进程:应用程序执行和保存资源的调度单位
线程:进程承载的应用程序调度资源的最小单位
锁:线程为解决资源争夺问题而建立的一个互斥的引用类型对象
线程同步:让线程之间使用的共同资源有序、正确的进行
lock(引用类型对象)
{
}
Monitor.Enter(引用类型对象);进入锁
Monitor.Exit(引用类型对象);释放锁
死锁:某个锁因为某种原因无法得到释放。
死锁可能导致程序无法继续运行
复习:
第一章:
.NET:微软提供的一个开发平台
c#:是.NET平台支持的一个语言
.NET framework一个服务器
VS:Vitual Studio 开发工具 IDE继承开发环境
Nottepade++ 开发工具 Mono.NET
.NET=CLR+公共类库(一组工具包)
CLR:公共语言运行时=CTS(通用类型系统 Common Types System)+CLS(公共语言规范 Common Langudage System)
编译原理:由各自的语言编译器将源代码编译成中间代码(IL)储存在.exe.dll文件中,在运行时价格中间代码转换成机器代码
第二章:数据类型
值类型和引用类型
值类型:结构 枚举
引用类型:类 接口 委托
结构:Int32(int)Int64(long) Double(double) Boolean(bool) Char(char) DateTime Color Timespan
枚举:窗体的拉伸
类:Stopwatch Console Form Object String
引用类型可以为null null表示没有存放地址
类型的转换:取值范围小的类型和取值范围大的类型进行运算,得到的结果是取值范围大
数组:下标 数组 数组项
第三章:表达式和操作符
一元操作符:++ -- .
二元操作符;+ - * / > < ==
三元操作符:(?:)三目运算符
第四章:流程控制
分支选择:if switch(可以写bool 数字 char string类型) case后面只能用常量
循环: while for foreach
跳转:goto(面向对象禁止使用goto) break continue
第五章:面向对象
OOP:Oriented Object Program 面向对象开发
OOD:Oriented Object Designer 面向对象设计
使程序满足高内聚,低耦合
三大特征:封装 继承 多态
属性 字段 方法 构造函数
修饰符:public private protected internal
默认修饰符:类:internal 字段/属性/方法:private
构造函数:隐式
1.保证创建的对象的逻辑正确
2.要满足所有的情况
3.尽量让调用者调用简单
方法签名:返回类型 方法名 参数列表
参数类型 参数名
形参(没有值)
实参
this:当前对象,当前是什么类型就是什么类型
构造函数:创建对象的时候运行 对象初始化器
重载:一个类里有多个相同的参数名,返会类型相同,但是参数数目不同或者参数类型不同
静态static:只能使用类名去调用
static修饰类的话:静态类 静态类中只能有静态资源
static:在静态资源内部 不能使用静态资源
在非静态的资源内部,可以使用静态资源
面向对象公式:使用一套行之有效的思维模式,保证了前后的思维一致,始终反应现实情况,减少了出错的机率
面向对象开发更关注系统中实体,而不是流程,提高了程序中的可维护性和可扩展性
利于开发人员之间的沟通
面向对象的继承和多态:
继承:
单根性:有且只有一个父类
传递性:a是b的父类,b是c的父类,那么a也是c的父类
继承是为了描述对象之间的从属关系
向上转型:子类可以隐式的转换成父类
向下转型:父类转换成子类,必须要强制转换,不安全,安全的转换用(对象 is 类型 或者 对象 as 类型)
多态的方法(有共同的父类,但是实现的行为不同):
virtual虚资源 有方法体
abstract抽象资源 可以没有方法体,子类必须重写,不能创建对象
不能继承的类:
sealed密封类 static
GDI+图形封装好的接口
Graphics
DoubleBuffer双缓冲
命名规范:
通用的命名规范:非第一个单词的单词首字母必须大写
类名:首字母大写
公共资源:首字母大写
public protected internal:首字母大写
private:视具体规定
参数:首字母小写
变量:首字母小写
单词缩写:所有字母达写