关于C#基础
前几天帮人做个社交网站,还是用的控件方式,不过学习了ajax和一般处理程序ashx后,也用在了里面一些,今天回来继续写博客。继续上次总结下基础知识,学的内容多,总结的可能比较杂乱,分条总结为平时能自己看看吧。
1,文件流FileStream比File类速度快,不占用内存。操作大文件要用文件流。
2,文件流资源,GC不会帮我们释放,需要手动释放。
3,当创建对象的过程写在using中,会自动释放资源。
4,如果在子类中,将成员名称写的和父类中的相同,这样会隐藏子类从父类那里继承过来成员,带来的效果就是子类‘点'不出父类的成员。
5,让一个对象表现出多个对象的状态称为多态。
6,实现多态的三种手段:虚方法,抽象类,接口。
7,抽象函数必须没有方法体,抽象函数必须在抽象类当中。
8,在父类函数没有什么意义的时候,就要用到抽象类,如果这个函数我们知道什么内容,并且需要调用,必须用虚方法。
9,将父类元素标记virtual,表示此函数可以被子类重写。在子类函数前加override,表示重新父类的方法。
10,不管是虚方法还是抽象类,我们在实现多态的时候都是通过声明父类成员,指向一个子类的对象。father f=new son();
11,抽象成员访问修饰符不能是private。
12,抽象类中可以包含实例成员。
13,抽象类是有构造函数的。
14,partial class是部分类,把类一分为几,用处很多。
15,实现多态:减少代码冗余,使程序更有拓展性,以适应需求的不断变化。
16,接口强调一个规范,接口可以比作一种’能力‘,接口中的函数和抽象类的函数含义相同,都表示”只说不做“;接口叫做实现。可以继承多个接口。
17,实现接口的子类,必须实现全部成员。
18,基类必须放在接口之前。
19,进程由多个线程组成。
20,一个服务器至少两个socket,第一个是监听是否有客户端的想要连接;第二个socket负责和客户端通信。
21,TCP三次握手(流式socket):数据稳定,效率较低。“1,你有空吗。2,有空;3,我知道你有空了”;
22,UDP(数据报socket):效率高,数据不稳定。“无论是否有空,都直接传数据”
23,端口1到65535之间,最好1024以后。
24,线程执行的函数,语法上要求必须是object;
25,div有些有点会使其快过table,div可以下载一个显示一个,而table要完整下载才能显示。XHTML网站标准中,不再使用table.
26,声明变量最好给null,因为""占用内存。