- 博客(10)
- 收藏
- 关注
原创 C#之接口
接口指定了一组函数成员而不实现这些成员,是一种引用类型。接口可以从一个或者多个基接口继承,当接口继承来自另一个接口时,实现派生接口的类必须实现基接口中的所有成员以及派生接口的成员。类通过继承语法来实现接口,一个类可以实现多个接口。实现接口的类必须为接口中的所有成员提供具体实现。接口中只能声明抽象成员,不能包含实现代码,只能包含方法,属性,事件,索引器等成员。语言中实现多态和组件化设计的核心机制之一,它定义了行为的契约而不关心具体的实现。接口一旦被实现,实现类必须实现接口中的所有成员,除非类本身是抽象类。
2025-05-20 23:41:57
480
原创 C#继承之里氏替换原则
即子类对象可以替换基类对象而不影响程序的正确性。用于安全转换,和强转来相比,更加安全,用于检查对象是否属于特定类型,操作符来处理类型检查和转换。转换失败时会返回null。
2025-05-14 07:58:06
565
原创 C#万物之父,装箱与拆箱
在C#中object类型被称为“万物之父”,他是所有类型的最终基类,它是一个类(引用类型),可以利用里氏替换原则,可以用来装载不确定的类型。如利用List<>来替换 ArrayList(本质是一个object数组,会发生装箱与拆箱的操作的转换),确定了类型,可以避免运行时发生类型转换。装箱:将值类型转换成引用类型,栈内存会迁移到堆内存中。装箱和拆箱可以显示进行也可以隐士进行。好处:可以在不确定类型时,来方便存储和传递。可以利用泛型集合来替换非泛型集合。拆箱:将引用类型转换成值类型。
2025-05-13 23:59:08
387
原创 C#交错数组:数组的数组
交错数组是C#中一种特殊的数组,其元素也是数组,与多维数组不同,交错数组的每个元素可以有不同的长度,因此也叫“数组的数组”。交错数组:每个元素可以有不同的长度,适合存储不规则的数据。多维数组:所有元素的长度必须相同,适合存储规则的数据。交错数组的声明使用两个中括号[ ][ ],例如。可以嵌套的两个for循环来遍历数组中的所有元素。初始化需要为每个元素分配内存;可以通过索引访问交错数组。也能在声明时直接初始化。
2025-03-08 12:56:31
312
1
原创 C#之枚举
枚举类型(Enum)是C#中的一种值类型,用于定义一组被命名的变量,它通过enum关键字关键字声明,默认是int类型,但也能指定其他类型,如(long,byte等)作为基础类型。枚举主要作用是提高代码的可读性和可维护性。(如果没有特定指定,那么枚举成员的值默认从0开始递增)先将字符串利用parse转换成你想要的类型,再利用强转来转换成枚举类型。可以在内部指定值,然后向下递增。在namespace语句块中(常用)ps:不能在函数语句块中申明。在struct语句块中。在class语句块中。
2025-03-07 23:31:49
478
原创 如何在vscode中配置C#环境
在出现的栏目中的最后一行(ps:要在大括号内部)输入code,在他弹出的界面中找到。输入以后就可以看到安装的版本号,出现版本号代表成功了。后回车,之后在填充的内容内部找到csharp项。在打开的vscode页面的左侧栏中点击这个。点击以后在后面的目录中找到这个选项并勾选。运行代码只需要按右上角的三角形的图标即可。(ps: code和.中间有一个空格),用于编译和运行 C# 程序。(ps:横线前有一个空格)选择你要保存代码的文件夹。保存,之后配置完成了。选其中一个下载就行。3,安装完成后,打开。
2025-03-05 12:26:32
2251
原创 C#中隐式转换与显式转换
这段代码可以运行不会报错,但可能会出现浮点数精度问题,因为float和double在存储小数时可能会有微小的精度差异,有时候1.2可能会显示为1.2000000476837158(这是由于浮点数的二进制表示方式导致的)显示转换是程序员明确告诉编译器要将一个类型转换为另一个数据类型,这种转换通常会涉及数据的精度损失或者数据范围的缩小,因此需要谨慎使用。当较小范围的数据类型转换成较大范围的数据类型时,编译器会自动完成隐式转换,属于安全操作。这段代码不会发生报错,内部会发生隐式转换。
2025-03-05 09:50:58
594
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅