http://blog.sysuschool.com/u/mygod/index.html
俞惠铭的blog
 
2022/10/29 14:31:00
博文_总结学习C#_高级篇


今天连发4弹,超额完成任务(附中人都懂的),接下来要写点东西,C#的学习告一段落,二来好久没写东西了,先预热下,虽然要写的东西与C#没关系,学东西的过程,写点笔记还是有用的,可以帮自己梳理下,所谓听是一回事,写出来又是一回事,哈哈! 

本来中级篇02,想单独写的,今天花的时间有点多了,就和高级合一起了,为了快速总结,很多东西不展开了。

 

中级篇:

3、集合

C#集合类,Array、ArrayList、Stack、Queue、SortList、Hashtable

前两个前面提过,不展开。

Stack 栈类,模拟栈的数据出入,先入后出;

Queue 堆类,模拟堆的数据出入,先入先出;

后两个不太清楚,什么时候有人用到,再研究。

4、泛型

这个非常有用,也是用类型声明变量的一种弥补。

泛型类 ,定义 class ClassA<T>{},构造时指定T,new ClassA<int>();

泛型方法,定义 public static string GetSum<T>(T a, T b){}

调用时指定T,如 GetSum<string>("ab", "cd")

泛型在很多地方都有用,比如委托。

 

高级篇

高级篇主要有:

1、字符串补充、StringBuilder类(可修改的字符串)

2、正则表达式,用于字符串的处理,基本上所有语言都支持

3、委托

这个非常重要了,也是初学者的难点,花了两周时间,基本搞明白了。

包括委托类型的定义,再用委托类型定义委托变量,如先定义一个能定义委托类型变量的委托类型(是不是非常绕,看书就是这样的,写的人明白,看的人包括写这个的人再看都不明白),如定义一个MyDelegate委托类型,用它就可以去声明一个委托变量了,如MyDelegate de,就象 用string声明一个name变量,string name。

委托变量就可以去引用一个方法了,还可以加入更多的方法,调用委托变量(即委托变量名+()),就可以按加入的顺序执行所指向的方法。

向委托变量加入方法,称注册。

委托变量可以作为方法的参数,这样定义一个方法时,用一个委托变量(可指向方法)做参数,这个方法在具体调用时,就可以传具体方法(是不是又非常绕)。

要讲清楚,要上非常多代码,不展开了。

C#内置了两个定义好的委托类型Action<T>,Func<T,T> ,前者只能引用没有返回值的方法,可以无参数,后者指向有返回值的方法,最后一个参数时返回值的类型。

多播委托,委托变量可以通过+=,指向更多的方法,执行时按加入的顺序,如果方法有返回值的话,只能拿到最后一个方法的返回值(没试过)。

匿名方法,方法的定义不需要函数名,直接赋值给委托,如

Func<int, int, int> plus02 = delegate ( int arg1, int arg2 ) { return arg1+arg2; };

Lambda表达式,这个python也有,上面的匿名方法可用lambda进行简写,不懂这个的人,看到这种代码会疯了!如上面的匿名方法

Func<int, int, int> plus = (arg1, arg2)=> { return arg1+arg2; };

4、事件

学到这的时候,也卡了不少时间,下面总结几个关键点。

事件其实就是委托变量,也是引用方法的,声明时,不同的地方是前面加event关键字,且不能在方法中声明。

委托变量引用了方法后,可以执行,但事件引用了方法后,不能直接执行,只能在类的方法里面执行,但事件可以在方法中注册(又是一个非常绕的东西)。

有一个设计模式,observer观察者设计模式,笔记里有两个非常经典的案例,结合案例就好理解了,不展开了。

5LINQ数据查询

类似SQL数据查询,不过是对类的字段进行,而不是对数据库,暂时只知道这个,C#对数据库怎么操作,还不清楚。

6、特性

obsolete可以警告某个方法有新的定义,conditional可以取消方法的调用等,现在只知道有这么一个东西,没怎么用过。

7、元数据(待学习)

8、线程和进程(学习中)

9、网络编程(待学习)

还有文档操作、xml、数据结构操作等。

 

总结告一段落,学完全部再上传一个word笔记,会有较多的代码案例,前提是能够传!

本来学习C#的目的,是为了在unity3d中做游戏开发的,因为不知道需要了解多少C#,故计划先看完手头的C#教程,再学习unity3d,正好3D方面的东西可以用上了,几年前做过一个附中的校园3d模型,用unity3d应该可以轻松制作在校园模型内漫游了,想想都蛮有意思的,哈哈哈,byebye

mygod | 阅读全文(52) | 回复(0) |反映问题 | 引用通告(0) | 编辑
发表评论:
粗体 斜体 下划线 插入引用 插入表情
公告
时间记忆
<<  < 2024 - 10 >  >>
1
2345678
9101112131415
16171819202122
23242526272829
3031
最新日志
最新评论
最新回复
我的好友
我的相册
站点信息
  • 日志:260
  • 评论:4
  • 留言:0
  • 访问:6790
生活因感动而精彩,理想在创造中放飞
Powered by Oblog.