.net 面试题系列文章六(附答案)

 

 

1. 简述 private protected public internal 修饰符的访问权限。

private : 私有成员, 在类的内部才可以访问。protected : 保护成员,该类内部和继承类中可以访问。public : 公共成员,完全公开,没有访问限制。internal: 在同一命名空间内可以访问。

 

2.写出一条Sql语句: 取出表A中第31到第40记录(SQLServer, 以自动增长的ID作为主键, 注意:ID可能不是连续的。)

select top 10 * from A where id not in (select top 30 id from A)

2: select top 10 * from A where id > (select max(id) from (select top 30 id from A )as A)

 

3.列举ASP.NET 页面之间传递值的几种方式。

1.使用QueryString, ....?id=1; response. Redirect()....

2.使用Session变量

3.使用Server.Transfer

 

4.请说明在.net中常用的几种页面间传递参数的方法,并说出他们的优缺点。

session(viewstate) 简单,但易丢失

application 全局

cookie 简单,但可能不支持,可能被伪造

input ttype="hidden" 简单,可能被伪造

url参数简单,显示于地址栏,长度有限

数据库稳定,安全,但性能相对弱

 

5.override与重载的区别

Override用来重写父类的方法,重载使用相同名的方法或操作符拥有不同类型的参数

 

6..net的错误处理机制是什么

.net错误处理机制采用try->catch->finally结构,发生错误时,层层上抛,直到找到匹配的Catch为止。

 

7.C#中接口和类的异同

接口和类都是类,不同的事,接口只包含方法或属性的声明,不包含具体实现方法的代码,接口可以实现多继承,而类只能是单继承,继承接口的类必须实现接口中声明的方法或属性。接口主要定义一种规范,统一调用方法,在大型项目中接口正发挥日益重要的作用。

 

8.DataReaderDataSet的异同

DataReaderDataSet最大的区别在于,DataReader使用时始终占用SqlConnection,在线操作数据库..任何对SqlConnection的操作都会引发DataReader的异常..因为DataReader每次只在内存中加载一条数据,所以占用的内存是很小的..因为DataReader的特殊性和高性能.所以DataReader是只进的..你读了第一条后就不能再去读取第一条了..

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

 

9.c#usingnew这两个关键字有什么意义,请写出你所知道的意义?

Using 引入一个名子空间,或在使用了一个对像后自动调用其IDesposeNew 实例化一个对像,或修饰一个方法,表此方法完全重写此方法

 

10.在下面的例子里

using System;

class A

{

public A(){

PrintFields();

}

public virtual void PrintFields(){}

}

class B:A

{

int x=1;

int y;

public B(){

y=-1;

}

public override void PrintFields(){

Console.WriteLine("x={0},y={1}",x,y);

}

当使用new B()创建B的实例时,产生什么输出?X=1,Y=0

posted @ 2010-12-19 00:59  左正  阅读(211)  评论(0编辑  收藏  举报