2.1: 记忆 记忆格式 他人写的步骤
2.2: 练习 抄代码 用心三遍
2.3: 理解 为什么这样做...
1. **在程序进入内存的时候 我们IT工程师,把程序占据的内存认为分为4部分.**
1. 堆 --> 存储引用类型 数组 字符串 class 等
2. 栈 --> 存储值类型的值, 所有方法和变量都在栈中 程序运行在栈中
3. 全局 --> 全局的量
4. 代码 --> 存放代码
1. 十进制转换二进制
除二取余法
2. 二进制准换10进制
按位展开法的逆向 X*2^N
在编程中默认编码格式为utf8 utf8是一种文件的编码格式,若编码格式不对应就会产生乱码的情况
UTF8 --> UTF8
C#会形成一个称谓IL的中间语言, 这个中间语言会在我们学习热更新的时候用到 这个知识点就背会吧. 其实在开发中我们不用管的
1. int 4
2. string
3. float 4
4. bool 1
5. class
6. char 2
7. double 8
8. enum 表示枚举类型 常用于unity编程 状态机
只要在int类型表示范围内统统int + - 21亿 -2147483648 + 2147483647
/ %
! ==
^ | & 位运算
&& || ! 用于if判断逻辑中
++i i++ 在赋值号存在的情况下, 没有赋值号 ++i i++ 都是自增
i++ 先赋值在自增
++i 先自增,在赋值
X = (bool) ?Number01:Number02; 相当于一个简单的if else
当bool为真 X = Number01
当bool为假 X = Number02
用赋值号链接的式子称谓表达式 A = B
foreach本质是迭代器,迭代器本身就是不能进行修改的 所以foreach不能修改, 要想修改数组必须使用for循环
1. 特性数组长度固定 在使用数组的时候必须固定大小
2. 数组是引用类型
3. 索引从0开始
4. 遍历数组使用foreach还是使用for 都行
5. 修改数组使用foreach or for
1. 方法命名是用帕斯卡
2. 变量使用驼峰
3. is开头的都是bool I开头的都是接口 abs开头的是抽象类
4. 弄一个变量在这里必须赋初值
继承,多态,封装.
多态的终极目标是:父类控制子类,父类可以调用子类的方法.(一般用于后期学习的框架编程)
oop编程指的是面向对象的编程,
这是一个抽象的概念,用代码表示就是new的基本对象.
一个方法有多个参数为 重载
char.IsDight 判断该char是否是10进制数值.
有下标,有遍历,不能改变.
1.比较字符串(忽略大小写)
2.比较字符串(不忽略大小写)
3.分割字符串
4.查找字符串
5.替换字符串 都换
6.截取字符串
7.空格处理
out是传出参数 在方法内部必须赋值
ref是传入参数 在方法外部必须赋值
命名空间是包含所有类的集合
base是访问基本基类成员 就是访问父类成员(保护和公开的部分)在方法中调用
public公开 protect保护 provide私有
抽象类和虚方法存在接口的意义是为了多态.
按位展开法 2进制转10进制的方法
比如 1010 即 最后一位往前一位依次相加
0x2的0次方+1x2的1次方+0x2的2次方+1x2的3次方
可以规整的建立多个方法
static void
最后用
static void main 来总结 这样可以显得比较整齐和有逻辑性
ArrayList 和 List 的使用方法是一样的
List 更加 安全
在动态数组中 Count和Length 的意思是一样的
List带泛型,数据类型不丢失
ArrayList<>不带泛型,数据类型可以丢失
ArrayList需要装箱拆箱,List不需要装箱拆箱
1 public static readonly MyClass myClass = new MyClass();
2 public static readonly string userName = “张三”; //
3 public const string userPwd = “1234”; //数字和string 效率高,灵活性低
1 //在Demo01中if 和 else中的代码逻辑都会被编译
2 static void Demo01(bool isDone)
3 {
4 List<int> list = new List<int>();
5 if (isDone)
6 {
7 list.Add(1);
8 list.Add(10);
9 list.Add(100);
10 list.Add(1000);
11 }
12 else
13 {
14 list.Add(2);
15 list.Add(20);
16 list.Add(200);
17 list.Add(2000);
18 }
19 }
20 //在demo02中if 和 else 中逻辑会根据isDone来选择一个进行编译 所以推荐使用Demo02的写法
21 static void Demo02(bool isDone)
22 {
23 if (isDone)
24 Demo02TrueMethod();
25 else
26 Demo02FlaseMethod();
27
28 }
1. 静态变量设置为 0 ;
2. 执行静态变量初始化器;
3. 执行基类的静态构造函数;
4. 执行静态构造函数;
5. 实例变量设置为 0;
6. 执行实例变量初始化器;
7. 执行基类中合适的实例构造函数;
8. 执行实例构造函数。
基类描述了对象是什么,接口描述了对象如何表现它的行为
指的是 Model View Controller
是一种软件设计典范,用一种 业务逻辑数据界面显示分离的方法 组织代码,将业务逻辑聚集到一个部件里面.
(树序列[根序列---->子序列---->叶序列])
前序 先根再左再右
中序 先左再根再右
后序 先左再右再根