C#入门
文章平均质量分 69
C#入门自用
Cziii
一个兴趣使然的学无止境研究仔
展开
-
【C#语言入门】17. 事件详解(上)
事件模型的五个组成部分。原创 2024-03-10 18:02:20 · 495 阅读 · 0 评论 -
【C#语言入门】20. 重写,多态
【代码】【C#语言入门】20. 重写,多态。原创 2024-03-15 12:19:54 · 417 阅读 · 0 评论 -
【C#语言入门】18. 事件详解(下)
完整声明简易声明,会有误解,事件名取代了字段名。原创 2024-03-11 17:12:32 · 359 阅读 · 0 评论 -
【C#语言入门】16. 委托详解
委托是一种类(class),类是数据类型所以委托也是一种数据类型它的声明方式与一般的类不同,主要是为了照顾可读性和C/C++传统注意声明委托的位置,避免写错地方结果声明成嵌套类型委托与所封装的方法必须“类型兼容”——》返回值的数据类型一致,参数列表在个数和数据类型上一致(参数名不需要一样)原创 2024-03-07 13:23:27 · 1794 阅读 · 0 评论 -
【C#语言入门】21. 抽象类与开闭原则
【代码】【C#语言入门】21. 抽象类与开闭原则。原创 2024-03-18 17:02:59 · 513 阅读 · 0 评论 -
【C#语言入门】10. 操作符详解(下)
位移操作符,数据在内存当中的二进制结构,向左或者向右进行平移。左移加进来的一定是0,右移,操作的是正数,补进来的是0;负数的话,补进来的是1。条件与、条件或,结果都是布尔类型。条件与的短路:当条件与发现左边的结果已经是“假”值了以后,就不会执行右边部分。基本无特殊注意点,要注意两边数据类型不同时,遵循“数值提升”原则。位与、位异或、位或,对位进行操作。原创 2024-03-06 17:19:13 · 458 阅读 · 0 评论 -
【C#语言入门】22. 接口、依赖反转、单元测试
在现实世界中,由于自身能力有限,合作是一个非常常见的行为,而面向对象是对现实世界的抽象,因此也存在着类与类、对象与对象的合作,即”依赖“。依赖的出现伴随着耦合,依赖越直接,耦合度越高。原创 2024-03-18 17:04:52 · 505 阅读 · 0 评论 -
【C#语言入门】19. 什么是类
IDName。原创 2024-03-15 12:19:15 · 509 阅读 · 0 评论 -
【C#语言入门】02.类,对象,类成员简介
例如在现实世界中一架战斗机不仅仅有他的一些基本参数,例如编号,型号,重量,载弹量等等,还有一些功能,他可以飞,可以射击,可以索敌等等。何为“去伪存真”?在现实世界中战斗机可以有很多很多的参数,大到整体的长宽,飞机加速度,小到升降轮的半径,但我们只会抽象出那些我们在程序中需要用到的参数忽略暂时没用的参数,例如我要设计一个有关飞机飞行速度的程序,那么升降轮的半径就可以忽略。何为“由表及里”?表为我们能看到的接口,里为封装的内容。原创 2023-12-27 17:23:29 · 368 阅读 · 1 评论 -
【C#语言入门】08. 操作符详解(上)
越靠上的操作符运算优先级越高,同一行的运算优先级相同,相同的运算优先级大多数则按照从左到右依次运算,赋值运算除外。原创 2024-01-23 14:14:51 · 357 阅读 · 0 评论 -
【C#语言入门】07. 方法的定义、调用与调试(下)
main函数是主调者(Caller),Calculator.GetConsVolume是被调者(Callee),方法的两个变量在C#中是归主调者也就是这里面的main函数管理内存空间的,也就是说谁调用,谁负责将变量从左到右压到栈内存中去。会出现被调用的函数以及调用它的函数,甚至是调用调用它的函数,直到找完找到最上层的调用函数。需要用到locals面板,他会显示用到的本地变量,同时也会标注出变化了的变量。函数的返回值比较特殊,是存放在CPU的寄存器中的。表示一个方法在被调用时,它在内存空间中的布局。原创 2024-01-19 16:03:45 · 350 阅读 · 1 评论 -
【C#语言入门】05. 详解类型、变量与对象(下)
值类型的变量。原创 2024-01-15 20:17:36 · 354 阅读 · 1 评论 -
【C#语言入门】06. 方法的定义、调用与调试(上)
如上,π的取值为3.14,但如果用户要求更加精确的π值,你就需要手动去修改每一个3.14值,如果程序很大有上百个3.14那就有很大的工程量,再如果有些地方需要3.14有些地方需要3.1415926,那就不能统一替换,甚至有些地方的3.14不是代表着π值,只是恰巧他也是3.14,那么统一修改就会造成更大的bug。而复用就可以解决这些问题↓复用既可以分解算法,又可以避免更改多次可能造成的bug。原创 2024-01-17 13:14:45 · 793 阅读 · 0 评论 -
【C#语言入门】11. 表达式、语句详解(1)
Wikipedia对语句的定义语句是高级语言的语法——汇编语言和机器语言只有指令,语句等价于一个或一组有明显逻辑关联的指令。举例:求圆柱体积。C#语言对语句的定义C#语言的语句除了能够让程序员“顺序的”表达算法思想,还能通过条件判断、跳转和循环等方法控制程序逻辑的走向。简而言之就是:陈述算法思想,控制逻辑走向,完成有意义的动作。C#语言的语句由分号结尾,但由分号结尾的不一定都是语句。语句一定是出现在方法体里的。//这不是语句//这也不是语句。原创 2024-02-29 16:08:29 · 397 阅读 · 0 评论 -
【C#语言入门】01.初识类与名称空间
名称空间可以有效的对成百上千的类进行分类管理,方便查找修改,也可以防止出现同名类的冲突。类:Progarm和Console就是类,Progarm是我们自己写的。**由于C#是完全面向对象的语言,因此程序本身(Program)和入口(Main)都是包含在类里面的。**Console类是微软提前准备好的,可以直接拿来用名称空间:HelloWorld 是名称空间,这是我们自己写的名称空间,可以方便别人调用这个名称空间里面的类。**using System 是引用System这个名称空间到我们的程序中来。原创 2023-12-27 14:29:24 · 378 阅读 · 1 评论 -
【C#语言入门】04. 详解类型、变量与对象(上)
例如3/4=0.75,但在编程语言中3/4=0,因为是int类型。原创 2024-01-15 18:00:52 · 314 阅读 · 1 评论 -
【C#语言入门】09. 操作符详解(中)
正副非反操作符,正副操作符基本与数学运算符一致,但是由于计算机语言中数据类型的最大值和最小值绝对值并不相同,因此对最大值直接取负很有可能产生溢出,因此我们要用到取反操作(~)。默认情况下只能获取基本数据类型的尺寸(结构体),在非默认的情况下我们可以用他去获取非基本数据类型,但是要放在非安全的环境中(unsafe)这些个也是类型,但是创建实例不需要new,这叫做C#的语法糖衣,一些非常基础的类型就帮你省掉了,当然你非要用也是没关系的。能用,但是是一次性的,因为没有把实例存到变量中去,过一会儿就会被回收。原创 2024-02-27 11:15:38 · 364 阅读 · 0 评论 -
【C#语言入门】13. 表达式、语句详解(3)
执行步骤:for-initializer(只执行一次)—》 for-condition(如果是true)—》embedded-statement—》for-iterator。(比较适用于计数的循环)foreach语句用于枚举一个集合的元素,并对该集合中的每个元素执行一次相关的嵌入语句。continue语句将开始直接封闭它的while、do、for、foreach语句的一次新迭代。迭代语句重复执行嵌入语句,有while、do、for、foreach四种语句。do语句按不同条件执行一个嵌入语句一次或多次。原创 2024-03-05 10:29:56 · 432 阅读 · 0 评论 -
【C#语言入门】15. 方法参数进阶,扩展方法
传值参数:参数的默认传递方式输出参数:用于除返回值外还需要输出的场景引用参数:用于需要修改实际参数的场景数组参数:用于简化方法的调用具名参数:提高可读性可选参数:参数拥有默认值扩展方法:为目标数据类型“追加”方法。原创 2024-03-06 12:42:17 · 433 阅读 · 0 评论 -
【C#语言入门】03.C#词法、类型、变量、方法与算法简介
首先不能与关键字冲突。可以使用字母,数字和下划线组成标识符,但是不能用数字开头。允许“@”字符作为前缀以使关键字能够用作标识符。循环初体验递归初体验。原创 2024-01-03 14:40:33 · 1667 阅读 · 1 评论 -
【C#语言入门】14. 字段,属性,索引器,常量
什么是索引器索引器(indexer)是这样一种成员:它使对象能够用于数组相同的方式(即使用下标)进行索引(indexer+双回车)public int?原创 2024-03-05 13:25:56 · 1895 阅读 · 0 评论