
C# 面向对象编程
文章平均质量分 71
面向对象编程(OOP)是一种编程范式,基于“对象”这一基本概念。在 C# 中,OOP 是构建应用程序的核心方法,它通过封装、继承和多态来提高代码的重用性和可维护性。
橙子味热果汁
这个作者很懒,什么都没留下…
展开
-
C# 委托详解(Delegate)
在 C# 编程当中,委托(Delegate)是一种特殊的类型,它允许将方法作为参数传递给其他方法,或者将方法作为返回值返回,这种特性使得委托成为实现回调函数、事件处理等,所有的委托都派生自System.Delegate类。原创 2024-08-28 18:38:33 · 1836 阅读 · 0 评论 -
C# 泛型(Generic)
泛型是C#语言的一项强大特性,它允许在定义类、接口、方法等时,不指定具体的数据类型,而是在使用时才指定。这种设计不仅提升了代码的复用性,还在编译时提供了类型安全,避免了因类型转换而引发的错误。原创 2024-08-20 15:59:09 · 1051 阅读 · 0 评论 -
C# 重载运算符
什么是重载运算符利用现有的某种运算符,针对自定义类或者结构,来定义某种运算操作。为什么需要重载运算符利用现有的运算符,简化自定义类型的操作。最好是,该运算符和该操作符,具有一定的相关性。可以重载的运算符不可以重载的运算符+ 加法= 赋值运算符减法(一元和二元)?: 条件运算符(三元运算符)* 乘法:: 作用域解析运算符/ 除法new 对象实例化运算符% 取模is 类型检查运算符& 位与as 类型转换运算符^ 位异或sizeof 大小运算符|| 逻辑或。原创 2024-08-18 17:00:01 · 608 阅读 · 0 评论 -
C# 隐式转换和显式转换
隐式转换是指的是在不需要任何显式转换的操作下,系统自动完成的数据类型转换。C#编译器会在满足安全转换条件时自动执行这种转换。隐式转换通常发生在较小的范围内的数据类型转换为较大的数据类型时。例如将 int 类型转换为 long 类型、float 类型转换为 double 类型。显式转换是指程序员主动指定的数据类型转换操作,在这种情况下,程序员需要使用类型转换操作符来明确指定要进行的转换。显示转换通常用于将较大范围的数据类型转换为较小范围的数据类型,或者将一个数据类型转换为另一个不兼容的数据类型。原创 2024-08-18 00:55:09 · 639 阅读 · 0 评论 -
C# 接口
在 C# 编程中,接口是一种关键的构建块,用于定义类可以实现的公共功能。它提供了一种方式来指定一组方法、属性、事件和索引器的签名,但不提供其实现。这种特性使得接口在构建灵活和可维护的系统时极为重要接口在C#中使用interface关键字定义。接口的定义与类相似,但是不包含任何的实现。接口会指定一组函数成员,但是不实现它们的引用类型。可以看作是一种契约,任何实现该接口的类都必须提供接口中定义的所有成员的具体实现。原创 2024-08-13 17:09:56 · 635 阅读 · 0 评论 -
C# 中的抽象类和抽象方法
抽象类是一种不能被实例化的类,用作其他类的基类。它可以包含抽象方法和普通方法,抽象方法是没有实现的方法,需要在派生类中实现。抽象类通常用来定义一种通用的接口或基础行为,为派生类提供共享的功能和结构。抽象类的存在只有一个目的,就是被继承。用作其他类的基类。用abstract修饰抽象类是一种不能被实例化的类,即为不能通过new关键字来创建对象。抽象类可以包含抽象方法和普通方法,以及它们的任意组合抽象类的抽象成员在派生类当中需要override关键字实现抽象类通常用来定义一种通用的接口或者基础行为。原创 2024-08-12 16:42:52 · 619 阅读 · 0 评论 -
C# 继承
C#中的继承是面向对象编程的核心特性之一,它允许你创建一个新类(子类或者派生类),来继承现有类(基类或者父类)的成员。继承在C#当中不仅仅简化了代码的重新使用,还帮助我们实现了多态,使得同一操作可以作用于不同类型的对象。原创 2024-08-11 17:20:20 · 828 阅读 · 0 评论 -
C# 中的多态
通过指向派生类的基类引用,调用虚函数,会根据引用所指向派生类的实际类型,调用派生类中的同名重写函数,便是多态。原创 2024-08-12 15:27:00 · 472 阅读 · 0 评论 -
C# 中的菱形继承
菱形继承是面向对象编程中一个潜在的复杂性问题,特别是在多重继承的情况下。虽然C#通过不支持多重继承来避免这些问题,但它提供了接口和组合等机制来实现类似的功能,同时避免了继承带来的复杂性。了解这些概念有助于更好地设计类结构,并在实际编程中做出更合适的选择。原创 2024-08-11 17:24:57 · 535 阅读 · 0 评论