![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C#
文章平均质量分 58
砸war鲁多
这个作者很懒,什么都没留下…
展开
-
抽象(abstract)和接口(interface)
abstract是C#关键字,用于修饰类和方法,被abstract修饰的类和方法被叫做抽象类和抽象方法。原创 2024-03-25 00:00:50 · 316 阅读 · 0 评论 -
运算符重载
条件运算符(>,<,>=,<=,==),条件运算符需要成对出现(>,<必须同时实现,>=,<=必须同时实现)重载如 + - * /之类的运算符,让自定义类型(类或结构体)的对象能够使用运算符。算术运算符都可重载(+,-,*,/,%,++等)位运算符都可重载(|,&,^,~,<<,>>等).(点),三目运算符?:,赋值运算符 =。逻辑运算符 &&和||。原创 2024-03-25 00:00:04 · 256 阅读 · 0 评论 -
string和stringbuilder
stringbuilder是长度可变的字符序列,创建的时候如果不带参数的话,那么默认的长度就是16,如果带参数的话,那么长度就是16+参数。string是一个长度不可变的字符序列,底层是一个被final修饰的char[]数组,所以说,任何对 String 类型进行改变的操作实际上都是重新生成了一个新的String对象,然后将指针指向新的 String 对象,这样不仅效率低下,而且大量浪费有限的内存空间,所以经常改变内容的字符串最好不要用 String。原创 2024-03-17 23:38:58 · 430 阅读 · 0 评论 -
委托(delegate)和事件(event)
在C#中,委托可以看做是方法的容器,让方法可以像变量一样作为参数传递。委托是安全的,因为它不会在运行时改变其目标方法。事件和委托的使用语法一样。但是在类外部不可对事件赋值和调用事件。但可以在外部+= 和 -=事件。> (1-16个泛型参数有返回值委托,最后一个参数代表返回值类型)Action (1-16个泛型参数无返回值委托)Func (泛型有返回值委托,参数代表返回值类型)using System;Action(无参无返回值委托)委托可以申明在命名空间或类中。原创 2024-03-17 23:37:59 · 364 阅读 · 0 评论 -
泛型(Generics)
在 C# 中使用泛型时,您可以使用尖括号 来声明类型参数,其中 T 是一个占位符,代表一个实际的类型。当sport调用Method1时,sport会要求提供的参数为Chinese类型,但Method1会要求参数为Human类型,Chinese是Human子类,这个不会出错。当sport调用Method2时,sport会要求返回一个Human类型,但Method2会返回一个Chinese类型,Chinese是Human子类这个不会出错。例如,Func 是一个委托泛型,它代表一个返回类型为 T 的方法。原创 2024-03-03 23:23:04 · 817 阅读 · 0 评论 -
C# Static与拓展方法
当我们声明一个类成员为静态时,意味着无论有多少个类的对象被创建,只会有一个静态成员。静态成员属于类,类的静态成员变量常用于用于定义常量,因为它们的值可以通过直接调用类而不需要创建类的实例来获取。(当然类的实例化对象也可以获取静态成员)当静态成员变量没有初始化时,系统会生成一个默认静态构造函数为静态成员变量赋值(数值类型是0,引用类型是null)。因为普通的成员变量只有在类实例化对象时才分配内存,当调用静态成员函数时不能去使用没有分配内存的成员变量。**静态类不能被实例化,不能被继承,只能包含静态成员。原创 2024-01-20 22:47:48 · 644 阅读 · 0 评论