C#学习笔记(c#重点整理)

上传人:ni****g 文档编号:508725508 上传时间:2023-12-16 格式:DOC 页数:7 大小:201KB
返回 下载 相关 举报
C#学习笔记(c#重点整理)_第1页
第1页 / 共7页
C#学习笔记(c#重点整理)_第2页
第2页 / 共7页
C#学习笔记(c#重点整理)_第3页
第3页 / 共7页
C#学习笔记(c#重点整理)_第4页
第4页 / 共7页
C#学习笔记(c#重点整理)_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《C#学习笔记(c#重点整理)》由会员分享,可在线阅读,更多相关《C#学习笔记(c#重点整理)(7页珍藏版)》请在金锄头文库上搜索。

1、.C#学习笔记1.C# 具有所有面向对象的语言的所有特性:封装,继承,多态。在C# 系统中,所有的类型都可以看作一个对象。 C#只允许单继承, 即一个类不会有多个基类, C#不会有全局函数,不会有全局变量,不会有全局常数,所有的一切只能封装在一个类中。 包括四个部分: vos 类型系统;元数据 ;公用语言规范 ;虚拟执行系统。3. using system 表示导入名称空间。4. 让我们从第一个程序开始就记得:每个东西都必须属于一个类,类里面的方法总是为我们完成某件工作的。 在 C#中,程序的执行总是从 main() 方法开始的, 一个程序中不允许出现两个或两个以上的 main()方法。对于习

2、惯学 C 控制台程序的读者, 必须要牢记: main() 方法必须包含在一个类中。5.利用string 可以方便地对字符串进行连接或剪切。例:string s= ”good”+”morning ”;charx=s3 字符串可以通过下标进行索引,得到一个字符。6. 我们可以用 / 进行单行标注, /* */ 进行多行标注。7.在 C 和 C+ 中,任何非 0 值都表示真,在 C#中,任何非 0 值都不能代替true.在其它类型的整型值和布尔值之间不存在任何的转换,将整型转换成布尔型是不合法的。8.把一系列相关的变量组织成单一实体的过程称为生成结构的过程。这个单一实体的类型叫结构类型,每一个变量就

3、是结构的成员。9. 结构类型包含的成员类型可以相同,也可以不同。我们甚至可以把一个结构类型当作另一个结构成员的类型。10.枚举 实际上是为一组在逻辑上密不可分的整数值提供便于记忆的符号。结构类型变量的值由各个成员的值组合而成。而枚举则不同,枚举类型的变量在某一时刻只能取枚举中某个元素的值。按照系统的设定,每个元素的类型都为整型。且第一个元素的值为0,后面的每个元素梯加 1,也可以直接赋值。 如把前面第一个元素的值设为1,后面的元素不用设,系统自动将后面元素的值递加1.11.C# 中另一大数据类型是 引有类型 。其含义是该类型的变量不直接存储所包含的值,而是指向它所要存储的值。也就是说引用类型存

4、储实际数据引用值的地址。12. 类是面向对象编程的基本单位, 是一种包含数据成员, 函数成员和嵌套类型的数据结构。类和结构都包含了自己的成员,但它们的区别是:类是引用类型,而结构是值类型。13. 如果我们对 某个类定义了一个变量,则我们就将它称为类的一个实例。14. 我们常用到的类: object 类。这个类是其它所有类的基类,其它类型可以直接或间接地从 object 类中继承。因此,对一个 object 类的变量可以赋于任何类型的值。15. 代表? 在声明代表时,只需要指定代表指向的原型的类型,它不能有返回值,也不能带有输出类型的参数。如:delegate int Mydelegate().

5、 在使用的时候: Mydelegate d=newMydelegate(p.instanceMethod). 为什么不用delegate d= new Mydelegate(p.instanceMethod)呢?原因是delegate 相当于 class 需要一个名字,class myclass 这个 class 的名字是myclass 而且它包含有其它元素、常数或者函数,变量等。跟char a=a 不同,它不包含有其它的元素,a 就是一个变量。而myclass 不是变量,它只一个名字。而myclass a=newmyclass(); a 才是变量,是类的一个实例。在这里,这个delegate

6、 的名字是Mydelegate ,也并不是一个变量。16. 变量 从用户角度来说,是存储信息的基本单元,从系统角度来说,变量就是计算机内存中的一个储存空间。17. 静态方法不能用类的实例来访问,必须用类名来访问。18. 数组的声明 :数组的类型 数组的元素个数 数组的名字 ;数组个数 可以通过数组名加圆1 / 7.点加 Length 获得。如arr.Length 表示 arr 数组的个数19. 在进行批量处理数据的时候 ,我们要用到数组 .数组是一组类型相同的有序数据 .20.数组的初始化 :int a1=new int1,2,3; 为什么是 new int, 而不是 new a1 呢 :因为

7、 int 是类型 ,a1 是 int 类型的一个实例 .而且 a1 所代表的是 1,2,3, 并不是函数 .与 delegate intMyclass(); 不同 ,Myclass() 虽然是一个名字,但它可以代表一个函数,不是常数 .原则 :类型后面的名字如果可以代表函数,则这个名字就是一种类型.如果类型后面的名字代表常数,则这个名字不是一种类型,只是类型的一个变量.或者可以用另一种说法: 如果名字后面含有(), 则在赋值或设定实例的时候new 后面要用该名字作为类型.21. 变量名不能与 C#中的关键字名称相同;变量名不能与C# 中库函数名称相同。22. 静态变量: static int

8、a;一旦静态变量所属的类被加载,直到包含该类的程序运行结束前它将一直存在。23. 稳性数据转换实际上就是从低精度的数据转换成高精度的的数据类型。如:ushort 转换成 int.24. 隐式枚举转换允许把十进制数 0 转换成任何枚举类型, 对其它整数则不存在这种隐式转换。25.从元素类型为 TS 的数组类型 S 到元素类型为 Tt 的数组类型 T 转换,如果元素类型为值类型,则不能进行隐式转换。26.有一个元素类型为 int 的枚举类型 E,则当执行从 E 到 byte 的显示枚举类型转换时,实际上作的是从 int 到 byte 的显示数字转换; 当执行从 byte 到 E 的显式枚举转换时,

9、 实际上是执行 byte 到 int 的隐式数字转换。如: Weekday day;day=(Weekday) 3; 实际上是 E 到 byte 的显示枚举类型转换。27. 如何使用枚举:enum Colorred=0, yellow, blue,green,purple;Color color_arr =new Color ();Color_arr=(Color) 2;2 / 7.Console.WriteLine(“Color_arr0”,Color_arr);.则其输出结果为blue.28. 赋值操作符() 和条件操作符(?:)按照右结合的原则,即操作从右到左的顺序执行。 Y=(x10?

10、 0:1).29. 枚举类型的加法 : Weekday day1=Weekday.Sunday; Weekday day2=Weekday.Saturday;Weekday day3=day1+6; 枚举型加法 实际上枚举基类型元素相加即一般为( int 型相加)。30. 如果两个 整数类型 的变量相除又不能整除,返回结果是不大于相除之值的最大整数。31. 求余运算: 5%3 2; 5%1.5 0.5.32. as操作符 用于通过引用转换或装箱转换将一个值显式地转换成指定的引用类型。33. 位运算符 就是对数按二进制位进行运算的操作符。位运算中的异或运算,当两个位相同时,异或运算结果为 0,

11、不相同时异或运算为 1. 移位运算,左称位将操作数向左位移,高位被抛弃,低位顺序补 0. 右移运算时,如果 X为非负数,最高位设为 0;如果 X为负数,最高位设为 1, 即最大为 1.34. 自增自减操作符:自增自减操作符有前缀和后缀之分。对于前缀操作符,遵行的原则是“先增减,后使用”,后缀则相反,“先使用,后增减”。35. new操作符 :new操作符用于创建一个新的类型实例。它有三种形式: 1, 对象创建表达式。2, 数组创建表达式。3代表创建表达式。36. typeof 操作符 用于获得系统原型对象的类型。37. check 和 uncheck 操作符 只影响其置于括号中的运算的溢出检查

12、。二 流程控制1.C# 提供的选择语句有if 和 switch 语句。2. 如果 if 或else 语句包含的嵌套语句只包含一条执行语句,则嵌套部分的大括号可以省略。3.每一条 else 与离它最近且没有其它else 与之配对的 if 相搭配。4.if 语句仅允许布尔数据类型的结果。例:if(args.length=0)是正确的。而 if(args.length)是不正确的。 args.length 返回一个整形数( integer )。5.switch 语句是只能有一个 default标签。6.C# 中它要求每个 case标签项后使用 break 语句或中转语句goto, 即不允许从一个 c

13、ase 自动遍历到其它 case. 如果想遍历其它语句,则可以加入下面两条跳转语句:goto case lable:跳至标签语句执行。 Goto default:跳至 default 标签执行。7.数组的初始化 : int a1=new int1,2,3,4,58.在事先知道循环次数的条件下,用for 循环是比较方便的。9. while 语句 中允许使用 break 语句来结束循环。 也可以使用 continue 语句来停止内嵌语句的执行,继续进行 while 循环。10. 可以使用 break 和continue 语句来控制循环的表达。 如:要求打印除 7以外的 0到 9的语句,只需要在到打印7 的时候,跳出打印语句就可以了。For(int i=0;i9;i+) if i=7continue;console.write(i);11.foreach(Myint x in Prime)12. 预编译和条件编译都是以 #开头的。可以帮助我们在程序执行过程中发出编译的错误或警告。3 / 7.13.溢出的处理用 checked 来检测。14.预处理指令如果出现在其它输入输出元素中间就不会被执行。中writeLine 或 Readline等中间。三 类1.C# 中的类只支持单继承。2. 对类成员的访问:1. 公有成员。 Public ,允许外部访问。2. 私

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 演讲稿/致辞

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号