设为首页 加入收藏

TOP

新编C#面试题(六)
2014-11-24 01:37:50 来源: 作者: 【 】 浏览:51
Tags:新编 试题
对SqlConnection的操作都会引发DataReader的异常..因为DataReader每次只在内存中加载一条数据,所以占用的内存是很小的..因为DataReader的特殊性和高性能.所以DataReader是只进的..你读了第一条后就不能再去读取第一条了..


DataSet则是将数据一次性加载在内存中.抛弃数据库连接..读取完毕即放弃数据库连接..因为DataSet将数据全部加载在内存中.所以比较消耗内存…但是确比DataReader要灵活..可以动态的添加行,列,数据.对数据库进行回传更新操作…


64. 在c#中using和new这两个关键字有什么意义,请写出你所知道的意义?


答:Using 引入一个命名空间,或在使用了一个对像后自动调用其IDespose,


New 实例化一个对像,或修饰一个方法,表此方法完全重写


65. 下面的例子中


using System;


class A


{


public static int X;


static A(){


X=B.Y+1;


}


}


class B


{


public static int Y=A.X+1;


static B(){}


static void Main(){


Console.WriteLine(“X={0},Y={1}”,A.X,B.Y);


}


}


产生的输出结果是什么?答:x=1,y=2


66. 在.net(C# or vb.net)中如何获得当前窗体或控件的句柄,特别是控件本身的句柄(请列举)。


答:this(C#) Me(vb.net).


67. 在.net(C# or vb.net)中,Appplication.Exit 还是 Form.Close有什么不同?


答:一个是退出整个应用程序,一个是关闭其中一个form


68. 下面这段代码输出什么?为什么?


int i=5;


int j=5;


if (Object.ReferenceEquals(i,j))


Console.WriteLine(“Equal”);


else


Console.WriteLine(“Not Equal”);


答:Not Equal——进行了装箱操作。


69. HashMap和Hashtable的区别。


答:HashMap是Hashtable的轻量级实现(非线程安全的实现),他们都完成了Map接口,主要区别在于HashMap允许空(null)键值(key),由于非线程安全,效率上可能高于Hashtable.


71. 重载与覆盖的区别?


答:


1、方法的覆盖是子类和父类之间的关系,是垂直关系;方法的重载是同一个类中方法之间的关系,是水平关系


2、覆盖只能由一个方法,或只能由一对方法产生关系;方法的重载是多个方法之间的关系。


3、覆盖要求参数列表相同;重载要求参数列表不同。


4、覆盖关系中,调用那个方法体,是根据对象的类型(对象对应存储空间类型)来决定;重载关系,是根据调 用时的实参表与形参表来选择方法体的


72. 什么是虚函数?什么是抽象函数?


答:虚函数:没有实现的,可由子类继承并重写的函数。抽象函数:规定其非虚子类必须实现的函数,必须被重写。


74. 什么是Web Service?UDDI?


答:Web Service便是基于网络的、分布式的模块化组件,它执行特定的任务,遵守具体的技术规范,这些规范使得Web Service能与其他兼容的组件进行互操作。


  UDDI 的目的是为电子商务建立标准;UDDI是一套基于Web的、分布式的、为Web Service提供的、信息注册中心的实现标准规范,同时也包含一组使企业能将自身提供的Web Service注册,以使别的企业能够发现的访问协议的实现标准。


75. 委托声明的关键字是______ 答:delegate.


76. 用sealed修饰的类有什么特点?答:密封,不能继承。


77. 在Asp.net中所有的自定义用户控件都必须继承自_Control___


78. 在.Net中所有可序列化的类都被标记为_[serializable]__


79. 在.Net托管代码中我们不用担心内存漏洞,这是因为有了__GC__


80. .某一密码仅使用K、L、M、N、O共5个字母,密码中的单词从左向右排列,密码单词必须遵循如下规则:


(1) 密码单词的最小长度是两个字母,可以相同,也可以不同


(2) K不可能是单词的第一个字母


(3) 如果L出现,则出现次数不止一次


(4) M不能使最后一个也不能是倒数第二个字母


(5) K出现,则N就一定出现


(6) O如果是最后一个字母,则L一定出现


问题一:下列哪一个字母可以放在LO中的O后面,形成一个3个字母的密码单词?


A) K B)L C) M D) N


答案:B


问题二:如果能得到的字母是K、L、M,那么能够形成的两个字母长的密码单词的总数是多少?


A)1个 B)3个 C)6个 D)9个


答案:A


问题三:下列哪一个是单词密码?


A) KLLN B) LOML C) MLLO D)NMKO


答案:C


81. ADO.NET相对于ADO等主要有什么改进?


答: 1:ado.net不依赖于oledb提供程序,而是使用.net托管提供的程序,


2:不使用com


3:不在支持动态游标和服务器端游


4:可以断开connection而保留当前数据集可用


5:强类型转换


6:xml支持


82. 大概描述一下ASP.NET服务器控件的生命周期


初始化> 加载视图状态> 处理回发数据> 加载> 发送回发更改通知> 处理回发事件> 预呈现> 保存状态> 呈现> 处置> 卸载


83.WCF 对WebSerice 的优势


WCF 能实现Webserice所有功能,并体现体现面向服务的程序思想。在WCF框架下,开发基于SOA的分布式系统变得容易了,微软将所有与此相关的技术要素都包含在内,掌握了WCF,就相当于掌握了叩开SOA大门的钥匙。


84. 如何传输一亿条数据(或者其他巨大的数字)


利用现有的技术,比如分页存储过程,每次提取1000行数据,异步循环读取。


直接select 会导致表被长时间锁定,而且无法做到传输数据的时候显示进度。


5值类型和引用类型的区别?


1.赋值方式不同:基于值类型的变量直接包含值。将一个值类型变量赋给另一个值类型变量时,将复制包含的值。引用类型变量的赋值只复制对对象的引用,而不复制对象本身。


2.值类型不可能派生出新的类型:所有的值类型均隐式派生自 System.ValueType。但与引用类型相同的是,结构也可以实现接口。


3.值类型不可能包含 null 值:然而,可空类型功能允许将 null 赋给值类型。


4.每种值类型均有一个隐式的默认构造函数来初始化该类型的默认值。


首页 上一页 3 4 5 6 下一页 尾页 6/6/6
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Interview questions for C# deve.. 下一篇C#面试常见问题

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: