加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
新建文本文档.txt 4.46 KB
一键复制 编辑 原始数据 按行查看 历史
胡江雄 提交于 2022-04-21 12:58 . add 000.
F5 执行?
C#代码中每行?代码以分号结束
程序员的专业和职业道德?
不写注释是流氓,名字瞎起是扯淡
Console.readkey(); 终结代码
//单行注释 /* */ 多行注释
Return n > n1 ? n : n1; #返回比较大的那个数字
“ = “ 赋值,将右边的值赋值给左边。 #不是数学意义上的等于!
整数类型:int 只能储存整数,不能储存小数。
小数类型:double 既能储存小数也能储存整数。
字符串类型:string 用来储存多文本 双引号 ” ” ;
字符类型: char 用来储存单个字符 单引号 ‘ ’ ;
波浪线
红色波浪线:代码语法错误
绿色波浪线:语法警告线
+ 号可以连接两个字符串
占位符{ 0 },{ 1 },挖了几个坑就填几个坑
Console.readline( ); #接收用户在控制台的输入
/n表示换行
自动类型转换:int--->double
显示类型转换: double-->int
语法:
[public] class 类名
{
字段;
属性;
方法;
}
this:表示当前这个类的对象
属性:属性的作用就是保护字段,对字段的赋值和取值进行限定
访问修饰符:
public: 公开的, 公共的,在哪都能访问。
private:私有的,只能在当前类的内部进行访问,出了这个类就访问不到了
静态和非静态:static 静态。
在非静态类中, 既可以有实例成员,也可以有静态成员。
在调用实例成员的时候,需要使用对象名.实例成员。
在调用静态成员的时候,需要使用类名。静态成员名。
C# 委托(Delegate)
C# 中的委托(Delegate)类似于 C 或 C++ 中函数的指针。委托(Delegate) 是存有对某个方法的引用的一种引用类型变量。引用可在运行时被改变。
委托(Delegate)特别用于实现事件和回调方法。所有的委托(Delegate)都派生自 System.Delegate 类。
声明委托(Delegate)
委托声明决定了可由该委托引用的方法。委托可指向一个与其具有相同标签的方法。
例如,假设有一个委托:
public delegate int MyDelegate (string s);
上面的委托可被用于引用任何一个带有一个单一的 string 参数的方法,并返回一个 int 类型变量。
声明委托的语法如下:
delegate <return type> <delegate-name> <parameter list>
实例化委托(Delegate)
一旦声明了委托类型,委托对象必须使用 new 关键字来创建,且与一个特定的方法有关。当创建委托时,传递到 new 语句的参数就像方法调用一样书写,但是不带有参数。例如:
public delegate void printString(string s);
...
printString ps1 = new printString(WriteToScreen);
printString ps2 = new printString(WriteToFile);
委托的多播(Multicasting of a Delegate)
委托对象可使用 "+" 运算符进行合并。一个合并委托调用它所合并的两个委托。只有相同类型的委托可被合并。"-" 运算符可用于从合并的委托中移除组件委托。
使用委托的这个有用的特点,您可以创建一个委托被调用时要调用的方法的调用列表。这被称为委托的 多播(multicasting),也叫组播。下面的程序演示了委托的多播:
实例
using System;
delegate int NumberChanger(int n);
namespace DelegateAppl
{
class TestDelegate
{
static int num = 10;
public static int AddNum(int p)
{
num += p;
return num;
}
public static int MultNum(int q)
{
num *= q;
return num;
}
public static int getNum()
{
return num;
}
static void Main(string[] args)
{
// 创建委托实例
NumberChanger nc;
NumberChanger nc1 = new NumberChanger(AddNum);
NumberChanger nc2 = new NumberChanger(MultNum);
nc = nc1;
nc += nc2;
// 调用多播
nc(5);
Console.WriteLine("Value of Num: {0}", getNum());
Console.ReadKey();
}
}
}
当上面的代码被编译和执行时,它会产生下列结果:
Value of Num: 75
C# 继承
继承是面向对象程序设计中最重要的概念之一。继承允许我们根据一个类来定义另一个类,这使得创建和维护应用程序变得更容易。同时也有利于重用代码和节省开发时间。
当创建一个类时,程序员不需要完全重新编写新的数据成员和成员函数,只需要设计一个新的类,继承了已有的类的成员即可。这个已有的类被称为的基类,这个新的类被称为派生类。
基类和派生类
一个类可以派生自多个类或接口,这意味着它可以从多个基类或接口继承数据和函数。
C# 中创建派生类的语法如下:
<访问修饰符> class <基类>
{
...
}
class <派生类> : <基类>
{
...
}
作用:方便调用时候,不用记住很多的函数方法名字,减少调用复杂性
1.首先解释一下什么是方法重载?
方法重载是指在同一个类中方法同名,参数不同,调用时根据实
参的形式,选择与他匹配的方法执行操作的一种技术。
这里所说的参数不同是指以下几种情况:
① 参数的类型不同
② 参数的个数不同
③ 参数的个数相同时他们的先后顺序不同
注意:系统会认为是同一个方法的两种情况,这样的两个方法不可以在同一个类里,否则系统会报错。
⑴返回类型不同,方法名和参数个数、顺序、类型都相同的两个方法
⑵返回类型相同,方法名和参数的个数、顺序、类型都相同的两个方法,但是参数的名字不同
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化