跟着刘铁猛老师的视频学习所做的笔记。
一.类(class)
1.类(class)构成程序的主体
编程时需要对许多类库(Assembly)进行引用,其中有两种引用方式
---.dll文件全称dynamic link library
- DLL引用(黑盒引用,无源码)
- 项目引用(白盒引用,有源码)
- NuGet引用(在线引用,下载他人管理整合好的类库进行引用)
2.类是对现实世界事物进行抽象的结果
- 事物包括“实体”(物质)和“逻辑”(行为)
- 对事物建模时“去伪存真”、“由表及里”的过程
3.类与对象的关系
- 对象也叫实例,是类经过实例化后在内存中的实体
- 依照类可以创建对应的对象,这就是实例化
- 使用 new 操作符创建实例
- 引用变量所存储的数据是对象(实例)在内存中的地址
4.类的三大属性
- 属性:存储数据,组合起来表示类或对象当前的状态
- 方法:表示类或对象能进行怎样的行为
- 事件:类或对象通知其他类或对象的机制(为C#独有)
5.三个关于成员的名词
- 静态成员(static):表示它是类的成员
- 实例成员(非静态):表示它是对象的成员
- 绑定(Binding):指编译器如何将一个成员与类或对象联系
二.数据类型
数据类型是指数据在内存中存储时的型号,而型号决定了其占用内存的大小。
1.数据类型在C#中的作用
- 存储此类型数据所需的内存大小
- 该类型数据的上下限
- 此类型数据所包含的成员
- 此类型由何种基类派生而来
- 程序运行时,此类型变量在分配时在内存的什么位置(堆-Heap(内存泄漏);栈-Stack(StackOverflow))
2.C#中五大数据类型
- 类 - class
- 结构体 - structures
- 枚举 - enumerations
- 接口 - interfaces
- 委托 - delegates
其派生谱系为:
三.变量 - 对象 - 内存
1.什么是变量
变量名表示了数据在内存中所在的内存地址的代号。并且变量类型可以决定存入数据的数据类型。 例如:
int x; //声明一个整形变量x
x = 10; //将 10 赋值给 x,由于 10 符合整形数规则,操作合法可以赋值。
/*
x = 10.2f;
x = 'a';
以上两种赋值均无法成功,因为所给数据的数据类型与变量类型不一致
*/
从内存角度变量可以更具体的描述为:以变量名所对应的内存地址为起点,以数据类型所需求的村塾空间为长度的一块内存区域。
2.变量的种类
3.变量的声明
有效的修饰符组合 + 类型 + 变量名 + 初始化器
public static ushort myVar = 5;
/*
其中
public static 为有效的修饰符组合,这部分可选,并不是每个变量都需要修饰
ushort 为类型,规定了我声明变量的类型与其之后传入数据的数据类型
myVar 为变量名,变量名不可为数字开头且一般采用驼峰式命名
= 5 为初始化器,此处可选
*/
4.内存
计算机所有数据都是通过二进制的形式保存。且当一条数据需要多地址存放时,内存地址高位对应数据高位,低位对应数据地位。
计算机通过我们的变量名寻找该变量名所指向的内存地址的过程叫 寻址。