- 博客(20)
- 收藏
- 关注
原创 C# 笔记17 特殊语法
1.var不能作为类的成员 只能用于临时变量申明时。可以通过直接写大括号的形式初始化公共成员变量和属性。如果左边值为null 就返回右边值 否则返回左边值。2.申明时 在值类型后面加?用$来构造字符串,让字符串中可以拼接变量了。4-1.如果为空 默认返回值类型的默认值。var 变量可以申明为自定义的匿名类型。也可以通过大括号 直接初始化内部属性。只要是可以为null的类型都能用。它可以用来表示任意类型的变量。1.值类型是不能赋值为 空的。4-2.也可以指定一个默认值。var是一种特殊的变量类型。
2024-03-14 09:59:53
365
原创 C# 笔记16 迭代器
迭代器就是可以让我们在外部直接通过foreach遍历对象中元素而不需要了解其结构主要的两种方式1.传统方式 继承两个接口 实现里面的方法2.用语法糖 yield return 去返回内容 只需要继承一个接口即可。
2024-03-13 10:47:35
350
原创 C# 笔记15 特性
基本语法:[特性名(参数列表)]本质上 就是在调用特性类的构造函数写在哪里?类、函数、变量上一行,表示他们具有该特性信息哪个文件调用?CallerFilePath特性哪一行调用?CallerLineNumber特性哪个函数调用?CallerMemberName特性需要引用命名空间 using System.Runtime.CompilerServices;一般作为函数参数的特性特性是用于 为元数据再添加更多的额外信息 (变量、方法等等)
2024-03-13 09:59:16
327
原创 C# 笔记14 反射
程序集是经由编译器编译得到的,供进一步编译执行的那个中间产物在WINDOWS系统中,它一般表现为后缀为.dll (库文件)或者是.exe (可执行文件)的格式说人话:程序集就是我们写的一个代码集合,我们现在写的所有代码最终都会被编译器翻译为一个程序集供别人使用比如一个代码库文件 (dll) 或者一个可执行文件(exe)
2024-03-12 16:04:03
861
1
原创 C# 笔记13 预处理器指令
编译器是一种翻译程序它用于将源语言程序翻译为目标语言程序源语言程序: 某种程序设计语言写成的,比如C#、C、C++、Java等语言写的程序目标语言程序:二进制数表示的伪机器代码写的程序预处理器指令 指导编译器 在实际编译开始之前对信息进行预处理预处理器指令 都是以#开始预处理器指令不是语句,所以它们不以分号;结束目前我们经常用到的 折叠代码块 就是预处理器指令预处理器指令可以让代码还没有编译之前就可以进行一些预处理判断在Unity中会用来进行一些平台或者版本的判断。
2024-03-11 16:42:01
366
原创 C# 笔记12 多线程
操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程我们目前写的程序 都在主线程中简单理解线程:就是代码从上到下运行的一条“管道”我们可以通过代码 开启新的线程可以同时运行代码的多条“管道” 就叫多线程。
2024-03-11 16:24:57
337
原创 C# 笔记11 协变逆变
协变:和谐的变化,自然的变化因为 里氏替换原则 父类可以装子类所以 子类变父类比如 string 变成 object感受是和谐的逆变:逆常规的变化,不正常的变化因为 里氏替换原则 父类可以装子类 但是子类不能装父类所以 父类变子类比如 object 变成 string感受是不和谐的协变和逆变是用来修饰泛型的协变:out逆变:in用于在泛型中 修饰 泛型字母的只有泛型接口和泛型委托能使用协变 out逆变 in。
2024-03-11 15:13:22
325
原创 C# 笔记10 List排序
class Item :IComparable//继承接口以实现该自定义类在List中排序//返回值的含义//小于0://放在传入对象的前面//等于0://保持当前的位置不变//大于0://放在传入对象的后面//可以简单理解 传入对象的位置 就是0//如果你的返回为负数 就放在它的左边 也就前面//如果你返回正数 就放在它的右边 也就是后面return 1;//要降序写-1elsereturn -1;//要降序写1//排序方法//未继承接口会报错。
2024-03-11 11:20:47
360
原创 C# 笔记9 Lambda表达式
可以将lambad表达式理解为匿名函数的简写它除了写法不同外使用上和匿名函数一模一样都是和委托或者事件 配合使用的。
2024-03-10 15:58:18
516
1
原创 C# 笔记7 事件
访问修饰符 event 委托类型 事件名;它只能作为成员存在于类和接口以及结构体中。1.事件是作为 成员变量存在于类中。2.委托怎么用 事件就怎么用。让委托的使用更具有安全性。事件是一种特殊的变量类型。1.不能在类外部 赋值。2.不能再类外部 调用。事件是基于委托的存在。事件是委托的安全包裹。
2024-03-09 17:07:45
347
原创 C# 笔记6 委托
访问修饰默认不写 为public 在别的命名空间中也能使用private 其它命名空间就不能用了一般使用public申明了一个可以用来存储无参无返回值函数的容器这里只是定义了规则 并没有使用委托规则的申明 是不能重名 (同一语句块中)表示用来装载或传递 返回值为int 有一个int参数的函数的 委托 器规则委托是支持 泛型的 可以让返回值和参数 可变委托变量是函数的容器委托常用在1.作为类的成员2.作为函数的参数class Test。
2024-03-09 16:32:05
387
原创 C# 笔记5 LinkedList
申明:LinkedList linkedList = new LinkedList();LinkedList是C#为我们封装好的类,它本质是一个可变类型的泛型双向链表。
2024-03-09 14:05:13
412
原创 C# 笔记3 Dictionary
Dictionary可以理解未拥有泛型的Hashtable,它是基于键的哈希代码组织起来的键/值对,键值对的类型从Hashtable的object变为了可以自己制定的泛型。申明:Dictionary dictionary=new Dictionary();
2024-03-08 16:36:40
344
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人