不错的题目
部分参照:http://blog.csdn.net/farawayplace613/archive/2008/08/26/2835210.aspx
1. different between event and delegate
1,event只能在申明的类中被使用,delegate在这方面可理解为class。
2,event,只能用+=或-=来添加和删除订阅
3,eventhandler==public delegate void EventHandler(object sender, EventArgs e);
2. GAC的理解及其作用.
即:Global Assembly Cache
见“http://topic.csdn.net/t/20020726/10/903310.html”,
关于GAC本身,上面redcaff_l所引述的一段话正是MSDN中对GAC的定义。GAC全称是Global Assembly Cache,他的作用是可以存放一些有很多程序都要用到的公共Assembly,例如System.Data、System.Windows.Forms等等。这样,很多程序就可以从GAC里面取得Assembly,而不需要再把所有要用到的Assembly都拷贝到应用程序的执行目录下面。举例而言,如果没有GAC,那么势必每个WinForm程序的目录下就都要从C:"WINDOWS"Microsoft.NET"Framework"v1.0.3705下面拷贝一份System.Windows.Forms.dll,这样显然不如都从GAC里面取用方便,也有利于Assembly的升级和版本控制。
3. HTTP module/HTTP handler
HttpRequest-->inetinfo.exe-->ASPNET_ISAPI.dll-->ASPNET_WP.exe-->HttpRuntime-->HttpApplicationFactory-->HttpApplication-->HttpModule-->HttpHandlerFactory-->HttpHandler-->HttpHandler.ProcessRequest()
HTTP module譬如在每个页面头或底部添加版权所有字样等内容。。。HttpHandler前或者后。。。取决于不同请求(未理解何种情况下)。
漂亮!:http://tech.cuit.edu.cn/forum/thread-1843-1-1.html handler部分找时间研究!
4. Viewstate
ASP时期一回后台前台数据全刷掉,于是道了ASP.NET就出现了个VIEWSTATE,用户不必手动控制,页面级变量,注意,需要OnInit()之后的LoadViewState方法里复原,用于保持页面状态,客户端。
注意:若用JS对控件赋值并且未回传至server那么viewstate当然的不会更新状态,也许下一次去后台直接取值会是错的,这个时候得用request.form.XXX了...当然这样的情况个人觉得应该不多
5. How to create a thread?
static void Main()
{
Thread.CurrentThread.Name = "main";
Thread worker = new Thread(Go);
worker.Name = "worker";
worker.Start();
Thread.Sleep(500);
Go();
Console.Read();
}
static void Go()
{
while (true)
{
Console.WriteLine("Hello from " + Thread.CurrentThread.Name);
}
}
6. How to create a process?
7. How to add a cookie/application?
创建:
HttpCookie mycookie = new HttpCookie("testCookie");
mycookie.Values.Add("id", TextBox1.Text);
mycookie.Values.Add("psword", TextBox2.Text);
Response.Cookies.Add(mycookie); //这句相当于server想客户端发出写cookie的请求
mycookie.Expires = DateTime.Now.AddDays(3);
读取:
HttpCookie getcookie = Request.Cookies["testCookie"];
8. 连接数据库.
SQL SERVER:
STRING CONNECTIONSTRING=CONFIGMANAGE.GETSTRING[“”].TOSTRING();
SQLCONNECTION COON=NEW SQLCONNECTION(CONNECTIONSTRING);
COON.OPEN();
9.静态全局变量和普通全局变量的区别
1,静态全局变量只初始化一次,内存中只有一个副本,不会因实例化而重写分配地址空间
PS:静态局部变量和普通局部变量区别:静态局部变量只被初始化一次,下一次按上一次的结果值;
静态函数和普通函数的区别:静态函数在内存中只有1份,普通函数每次类被实例化时都维持一份拷贝。
10. 抽象类和接口的区别.
1,继承方面,类只能继承一个,借口可以继承多个。(接口的意义?)
2,抽象类内可以定义方法,变量等,而接口内不能定义字段和方法体。
11. .NET Generic的理解.
堆栈到托管堆,boxing,反过来unboxing,性能消耗-->generic-->代码复用
12. Const/read-only
前者必须在定义时就赋值,否则编译不过
后者也必须是定值,但是可以在构造函数内赋值,在编译时确定,确定之后不可更改。
数据类型:前者只能是string,值类型,或不指向任何引用null
后者可以是任何类型。
13. Winform的DataGridView和database
1,datagridview是显示database内数据的
2,database是datagridview是数据源
3,两者通过
14. Handler/Module, or how MasterPage works,
1,handler/module即前面研究过
Masterpage的原理?
是否也就是重写httpmodule?概率很小...mark~
15. 面向对象和面向过程的区别有哪些,
1,面向过程是分析问题所需的步骤,然后拿函数去实现这一个个步骤;面向对象是按照功能来划分问题,创建类。
2,比如,普通计算器的实现:
面向过程:输入数字1,输入数字2,输入运算符,判断符号调相应方法。
面向对象:简单工厂模式,各类运算封装成对象
面对改变时:前者需要修改代码全部重新生产;而后者修改工厂类和增加或修改相应算法类即可。
面向接口而非面向实现-||我们的代码呢?囧...
16. 讲讲你对.NET Framework的理解
1,提供一个一致的环境,提供公共的类库
2,底层平台一致之后使开发人员能够对类型不同的程序适应较快(winform,web)
3,按照同一标准可确保基于.NET Framework的代码可于其他代码继承
4,以上摘自MSDN帮助文档,其实还有很多…CTS,CLS,CLR,GC,GAC,这些都是这个平台提供的吧,看到CLR想到最重要的一个好处就是不同语言均编译成IL可以类似COM一样脱离开发语言互相调用.
17. SQL,对表的理解,对表的主键,外键的理解,视图,为什么要有视图,视图有什么功能,视图与表有什么区别,使用过其他数据库吗? SQL与其他数据库的不同点在哪
1,表:同一类实体或关系记录的集合
2,主键:该表中唯一标识
3,外键:本表对其他表的主键的引用
4,视图:虚拟表
5:视图作用:可以将多个表收集到同一视图中
6:ORACLE,SQL不同点
①ORACLE可以在所有主流平台上运行而SQL只能在WINDOWS上运行,但是SQL与WINDOWS操作系统以及。Net开发平台的结合程度,使用的方便性要比ORACLE强很多。
②安全性方面ORACLE高于SQL
③ORACLE中有复合数据类型而SQL中没有。
④ORACLE可以边查询边给变量赋值。
18. ADO.的理解
简单说: DataTable dt = new DataTable();
SqlCommand cmd = new SqlCommand("SELECT * FROM TAB;",Connection,transaction);
SqlDataAdapter dataAdapater = new SqlDataAdapter(cmd);
dataAdapater.Fill(dt);
复杂说:...需要考虑的很多
19. 网络的相关信息. TCP/ IP的理解
《计算机网络》
20. 存储过程,什么是存储过程等等
21. 对数据结构单链表的理解,”树”数据结构的理解.
链表:DATA+NEXT(参照VC++)
树:?
22. Inner left和right join的区别.
略
23. Override与overload的区别.
1,外形:参数方法名返回值,前者必须都相同,用于对基类中虚成员的实现。后者参数的类型或顺序至少一个不同。(只有返回值不同的是不可以的)
2,都是多态性的体现
24. 链表删除结点的用法.
参照VC++
25. 成员初始化顺序,值类型/引用类型,异常处理,同步等.
1,成员初始化顺序:先生成成员变量,再生成成员方法。
2,值类型/引用类型:略
3,异常处理:try{}catch(Exception e){}finally{}...
4,同步:线程同步例子不错,http://www.cnblogs.com/sopper/archive/2007/06/15/784947.html
http://www.cnblogs.com/xd125/archive/2007/12/12/992406.html
26. ASP页面的执行顺序
1)控件的Init事件
2)控件所在页面的Init事件
3)控件所在页面的Load事件
4)控件的Load事件
5)控件所在页面的PreRender事件
6)控件的PreRender事件
7)JavaScript的onload事件
lifecycle of a control:http://msdn.microsoft.com/en-us/library/aa719775.aspx
27. net framework的程式、架构
CLR-->IL-->JIT-->机器码
28. MFC消息机制
不是很清楚,消息队列保证先进先出。
29. 虚拟内存如何实现?
当加载一个需求内存很大的时候,并不是将该程序的所有内容都加载到内存上,而是通过一定算法将其“认为”常用的加载到内存上而其他的加载到硬盘上,硬盘上的存放这部分内容的空间就称为虚拟内存。
30. Windows内存寻址