20150325第一次.net笔试题

1、托管资源好非托管资源的区别:

  

  托管资源一般指被CLR控制的内存资源,这些资源的管理可以由CLR来控制,例如,程序中分配的对象,作用域内的变量。

  

  非托管资源是CLR不能控制和管理的部分,比如,文件流,数据库的连接等。

2、Finalize和Dispose的区别

  

  C#用户可以直接把“Finalize”换成析构函数去理解。

  Finalize和Dispose都是释放资源,Finalize是隐式释放资源,Dispose是显示释放资源; Finalize是在对象不可访问后自动调用,Dispose是类使用者调用的

3、泛型的作用

  是指将类型参数化,已达到代码的复用提高软件开发工作效率的一种数据类型。

  http://www.blogjava.net/Jack2007/archive/2008/05/05/198566.html 在博客园找的一篇泛型详解,我觉得写的很详细。(感谢这位博主)

4、DataReader和DataAdapter读取处理数据有什么区别

  DataReader是一个向前的指针,调用一次Reader()方法他就向前到下一条记录,DataReader必须单独占用一个打开的数据库连接。

  DataAdpter像一座桥梁,一边连接数据库,一边连接DataTable和DataSet,把数据库中的数据填充到DataTableh或DataSet中就可以断开连接,从DataTable/DataSet中取出数据。

5、文件流的操作

第一种使用FileStream读取一个文件

  

1 //FileStream:操作字节
2             StreamReader和StreamWriter:操作字符的。
3             using (FileStream FsRead = new FileStream(@"F:\面试的题\笔试题.txt", FileMode.OpenOrCreate, FileAccess.Read))
4             {
5                 byte[] buffer=new byte[1024*1024*3];
6                 int r = FsRead.Read(buffer,0,buffer.Length);
7                 string str = Encoding.Default.GetString(buffer, 0, r);
8                 Console.WriteLine(str);
9             }

第二种使用StreamReader

 using (StreamReader sr = new StreamReader(@"F:\面试的题\笔试题.txt", Encoding.Default))
            {
                while (!sr.EndOfStream)
                {
                    Console.WriteLine(sr.ReadLine());
                }
            }

  

  

  小结:今天的面试真的是惨不忍睹,笔试题没有做上来几道。当时就觉得没戏了,我把当时不会做的题抄在了一张纸上,回来以后各种百度答案。写出了这些,明天还有个面试,继续加油吧。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。