搜档网
当前位置:搜档网 › .net 面试题

.net 面试题

.net 面试题
.net 面试题

1)简述Private、protected、public、internal修饰符的访问权限

2)静态变量、非静态变量的区别?

3)什么是事务(tarnsation)?它有什么好处?

4)如果在一个B/S结构的系统中需要传递变量值,但是又不能使用Session、Cookie、

Application,您有几种方法进行处理?

答:1 使用QuerySting 2使用Server.Transfer 3 使用@PreviousPageType指令4利用某些控件的PostBackUrl属性等

5)面向对象的基本特征是什么

6)值类型和引用类型的区别?请写出c#的样例代码

7)short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错

8)NULL是什么意思?

9)详述.NET里class和struct的异同

10)C#中的接口和类型有什么异同

11)String和StringBuilder的区别是什么?

12)switch是否能作用在byte上,是否能作用在long上,是否能作用在String上?

13)谈谈final, finally, finalize的区别

14)abstract的method是否可同时是static,是否可同时是native,是否可同时是synchronized?

15)是否可以继承String类

16)Override与重载的区别

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

18)New有几种方法

19)数组有没有length()这个方法? String有没有length()这个方法

20)试列出你会的数据结构,并比较List与hashtable有什么异同,各有什么用途?

21)请描述C#中ref和out的区别

22)请描述内存中堆和栈的区别

23)如何理解.net中的垃圾回收机制(C#中的内存释放机制是怎样的?)

24)请叙述属性与索引器的区别。

属性索引器

通过名称标识。通过签名标识。

通过简单名称或成员访问来访问。通过元素访问来访问。

可以为静态成员或实例成员。必须为实例成员。

属性的get访问器没有参数。索引器的get访问器具有与索引器相同的形参表。

属性的set访问器包含隐value参数。除了value参数外,索引器的set访问器还具

有与索引器相同的形参表。

25)请叙述const与readonly的区别。

const 关键字用于修改字段或局部变量的声明。它指定字段或局部变量的值不能被修改。常数声明引入给定类型的一个或多个常数。

const数据成员的声明式必须包含初值,且初值必须是一个常量表达式。因为它是在编译时就需要完全评估。

const成员可以使用另一个const成员来初始化,前提是两者之间没有循环依赖。

readonly在运行期评估赋值,使我们得以在确保“只读访问”的前提下,把object的初始化动作推迟到运行期进行。

readonly 关键字与const 关键字不同:const 字段只能在该字段的声明中初始化。readonly 字段可以在声明或构造函数中初始化。因此,根据所使用的构造函数,readonly 字段可能具

有不同的值。另外,const 字段是编译时常数,而readonly 字段可用于运行时常数。readonly 只能在声明时或者构造函数里面初始化,并且不能在static 修饰的构造函数里面。

26)如何理解委托?时间是不是一种委托?

27)在函数前加关键字“delegate”与不加此关键字有什么异同?

28)下面这段代码输出什么?为什么?

Int i=5;

Int j=5;

If(Object.ReferenceEquals(I,j))

Console.WriteLine(“Equal”);

Else

Console.WriteLine(“Not Equal”);

29)描述一下C#中索引器的实现过程,是否只能根据数字进行索引。

30)Try{}里有一个Return语句,那么紧跟在这个try后的fanally{}里的code会不会被执行,

什么时候执行?在return前还是后?

31)Datagrid.datasouse可以连接什么数据源

32)概述反射和序列化

33)sleep() 和wait() 有什么区别

34)启动线程用run()还是Start() 区别

Start();

启动一个线程是调用start()方法,使线程所代表的虚拟处理机处于可运行状态,这意味着它可以由JVM调度并执行。这并不意味着线程就会立即运行。run()方法可以产生须退出的标志来停止一个线程。

35)概述o/r mapping的原理

36)类成员有()种可访问形式

37)用sealed修饰的类有什么特点

38)两个对象值相同(x.equals(y) == true),但却可有不同的hashcode,这句话对不对

39)概述.NET里对remoting和webservice两项技术的理解和实际中的应用

40)常用的调用Webservice的方法有哪些?

41)什么是code-behing技术

42)概述三层结构体系

43)https://www.sodocs.net/doc/8b6497988.html,如何实现MVC模式,请举例说明

44)请简述XML和Json的区别及你对各自的理解

45)MVVM模式包含哪三个概念?它们在此模式下所起的作用分别是什么?

46)面向对象的思想主要包括什么

47)什么是https://www.sodocs.net/doc/8b6497988.html,中的用户控件

48)请编程遍历页面上所有TextBox控件并给它赋值为string.Empty

49)什么叫应用程序域?什么是受管制的代码?什么是强类型系统?什么是装箱和拆箱?

什么是重载?CTS\CLS和CLR分别作何解释?

50)列举一下你所了解的XML技术及其应用

51)DataReader和Dataset有什么区别?

52)https://www.sodocs.net/doc/8b6497988.html,中常用的对象有哪些?分别描述

53)描述怎样区分使用ExcuteNonQuery和ExcuteScalar方法?

54)什么是存储过程、触发器?

55)如何处理几十万条并发数据

56)在.NET中,类System.Web.UI.Page可以被继承吗?

57)数据库的结果集可以通过几种方式获得与存取,优缺点各是什么?

58)试列出C#中集中数据库优化方法,并说明理由

59)UDP连接和TCP连接的异同

60)https://www.sodocs.net/doc/8b6497988.html,的身份验证方式有哪些?分别是什么原理

61)在.NET中,配件的意思是?(程序集)

62)简述https://www.sodocs.net/doc/8b6497988.html,中的内置对象及其适用范围

63)<%# %>和<% %>有什么区别

64)进程和线程分别怎么理解

65)什么是soap,有哪些应用

66)如何部署一个https://www.sodocs.net/doc/8b6497988.html,页面

67)常用的调用webservice的方法有哪些

68)写出瀑布模型有那几个过程

69)描述白盒测试和黑盒测试之间的区别。

70)什么叫做SQL注入。如何防止?请举例说明

71)SQLSERVER服务器中,给定表table1 中有两个字段ID、LastUpdateDate,ID表示更

新的事务号,LastUpdateDate表示更新时的服务器时间,请使用一句SQL语句获得最后更新的事务号。

答:Select ID FROM table1 Where LastUpdateDate = (Select MAX(LastUpdateDate) FROM table1)

72)需要实现对一个字符串的处理,首先将该字符串首尾的空格去掉,如果字符串中间还有连

续空格的话,仅保留一个空格,即允许字符串中间有多个空格,但连续的空格数不可超过一个.

答:string inputStr=" xx xx ";

inputStr=Regex.Replace(inputStr.Trim()," *"," ");

73)class Class1

{

private static int count = 0;

static Class1()

{

count++;

}

public Class1()

{

count++;

}

}

Class1 o1 = new Class1();

Class1 o2 = new Class1();

请问,o1.Count的值是多少?( )

A.1

B.2

C.3

D.4

74)一列数的规则如下: 1、1、2、3、5、8、13、21、34...... 求第30位数是多少,用递归

算法实现(写一个控制台程序)

答:

public class MainClass

{

public static void Main()

{

Console.WriteLine(Foo(30));

}

public static int Foo(int i)

{

if (i <= 0)

return 0;

else if(i > 0 && i <= 2)

return 1;

else return Foo(i -1) + Foo(i - 2);

}

}

75)写一个函数计算当参数为N时的值:1-2+3-4+5-6+7……+N

76)请用面向对象的思想设计一个计算器程序,请写出程序框架(主要使用的类和方法),

可以使用伪代码

77)用100元买100支笔,其中钢笔3元/支,圆珠笔2元/支,铅笔0.5元/支,求几种组合

78)编码实现一个快速排序算法(任意编程语言)

79)请写出一个单利设计模式的实现代码(语言不限)

80)简述什么是聚合关系?举一个聚合关系的例子(通过UML图说明)

81)举例说明C#语言中Interface的作用

82)问题描述:

已知关系模式:

S (SNO,SNAME) 学生关系。SNO 为学号,SNAME 为姓名

C (CNO,CNAME,CTEACHER) 课程关系。CNO 为课程号,CNAME 为课程名,CTEACHER

为任课教师

SC(SNO,CNO,SCGRADE) 选课关系。SCGRADE 为成绩

1. 找出没有选修过“李明”老师讲授课程的所有学生姓名

Select SNAME FROM S Where NOT EXISTS(Select*FROM SC,C Where https://www.sodocs.net/doc/8b6497988.html,O=https://www.sodocs.net/doc/8b6497988.html,O AND CTEACHER='李明'AND SC.SNO=S.SNO)

2. 列出有二门以上(含两门)不及格课程的学生姓名及其平均成绩

SELECT S.SNO,S.SNAME,AVG_SCGRADE=AVG(SC.SCGRADE)FROM S,SC,(

SELECT SNO FROM SC WHERE SCGRADE<60 GROUP BY SNO HAVING COUNT(DISTINCT CNO)>=2 )A WHERE S.SNO=A.SNO AND SC.SNO=A.SNO

GROUP BY S.SNO,S.SNAME

3. 列出既学过“1”号课程,又学过“2”号课程的所有学生姓名

SELECT S.SNO,S.SNAME FROM S,

(SELECT SC.SNO FROM SC,C WHERE https://www.sodocs.net/doc/8b6497988.html,O=https://www.sodocs.net/doc/8b6497988.html,O AND https://www.sodocs.net/doc/8b6497988.html,O IN(1,2)

GROUP BY SNO HAVING COUNT(DISTINCT https://www.sodocs.net/doc/8b6497988.html,O)=2 )SC WHERE S.SNO=SC.SNO

4. 列出“1”号课成绩比“2”号同学该门课成绩高的所有学生的学号

select*from sc where https://www.sodocs.net/doc/8b6497988.html,O=1 and

(select SC.SCGRADE from SC where sc.SNO=2 and https://www.sodocs.net/doc/8b6497988.html,O=1)

5. 列出“1”号课成绩比“2”号课成绩高的所有学生的学号及其“1”号课和“2”号课的成绩SELECT SC1.SNO,[1号课成绩]=SC1.SCGRADE,[2号课成绩]=SC2.SCGRADE FROM SC SC1,SC SC2

WHERE https://www.sodocs.net/doc/8b6497988.html,O='1'AND https://www.sodocs.net/doc/8b6497988.html,O='2'AND SC1.SNO=SC2.SNO AND SC1.SCGRADE>SC2.SCGRADE

83)已知abc+cba=1333,其中a,b,c均为一位数,编程求出满足条件的a,b,c所有组合

int a,b,c;

for (a = 0; a <= 9; a++)

{

for (b= 0; b <= 9; b++)

{

for (c = 0; c <= 9; c++)

{

int count=100*a+10*b+c+a+10*b+100*c;

if (count == 1333)

{

Console.WriteLine("a={0},b={1},c={2}", a, b, c);

}

}

}

}

84)写一个HTML页面,实现以下功能:左键点击时显示“您好”右键点击时显示“禁止右

键”。并在2分钟后自动关闭页面。

85)HTML/XML规范中,元素结束标签是以尖括号括起来,并以/还是\开头再加上元素名称?

即boby的结束标签是还是<\boby>?

86)XML规范中,第一行必须是

87)一个HTML文档必须包含的三个元素,他们是Head、boby和_html__

88)HTML中文档内联注释应该是以

89)FireFox浏览器是否支持VBScript脚本?

90)CSS规范中,每一条样式的结束符;(分号)还是:(冒号)?样式名与样式值之间的分隔符

是:(冒号)还是=(等号)?

91)CSS规范中,.(句点)后面跟一个名称代表什么含义?#(井号)后面跟一个名称代表什么含

义?如果要对一个元素设置CSS样式,应将CSS样式写在它的什么属性内?

92)请写出下面的内容在HTML中代表什么含义


93)JS中用var声明一个变量,______(可以或不可以)不声明而直接给一个变量赋值

94)请描述下面常用JS方法的含义

a)alert(str);_____________

b)confirm(str);___________

c)prompt(str,default);______________

95)请简单描述下面内容的含义

1)$(“#txtUid”).val() :______________________________________________________ 2)function people(name){https://www.sodocs.net/doc/8b6497988.html,=name;}____________________________________ 3)people.prototype.getName=function(){return https://www.sodocs.net/doc/8b6497988.html,;}_________________________ 4)setTimeout(‘delay_lms_timer()’,1000)_________________________________________ 5)window.onunload_________________________________________________________ 6)$(“#ControlID”).show()______________________________________________________ 7)$(“#ControlID”).toggle()_____________________________________________________ 8)$(document).ready_________________________________________________________ 96)JS中获取标签的方法有:

getElementsByTagName() 方法可返回带有指定标签名的对象的集合

getElementsByID

getElementsByName

97)JQuery $方法获取标签的类型:

98)JQuery Ajax方法的参数有:

99)JSON格式对象与数组的例子:

100)Aspx.cs文件中有哪些事件:

101)事件的先后执行顺序是:

102)HttpHandler/HttpModule的区别

103)请说出你所熟悉的设计模式及其例子:

104)请说出查询一个数字列的最小值的几种方法:

105)表1的ID是表2的FID的主键,已知条件A,请问求对应条件A的表1数据对应的表2的数据总数的SQL语句可以有哪几种:

106)对某表已知有条件A与条件B,且已知A检索出的数据比B少,请问当Where条件中A 与B为and关系时,是A and B执行较快还是B and A执行较快,为什么:

107)如何把一个array复制到arraylist里(产生一个int数组,长度为100,并向其中随机插入1-100,并且不能重复)

108)

109)在从1 到n的正数中1 出现的次数

题目:输入一个整数n,求从1 到n 这n 个整数的十进制表示中1 出现的次数。

static int numofone(int num)

{

int count = 0;

while (num > 0)

{

if (1 == num % 10)

count++;

num = num / 10;

}

return count;

}

static voi d Mai n(string[] args)

{

int MAX_NUM = int.Parse(Console.ReadLine());

int num = 0;

for (int i = 0; i <= MAX_NUM; i++)

{

int oneInEachNumber = numofone(i);

if (oneInEachNumber > 0)

{

num += oneInEachNumber;

}

}

Console.WriteLine(num);

}

110)现有100万个无序的整数,请从中找出10个最大的,请写出伪码或代码实现

111)求一个矩阵中最大的二维矩阵(元素和最大).如:

1 2 0 3 4

2 3 4 5 1

1 1 5 3 0

中最大的是:

4 5

5 3

要求:用C#写出关键代码

112)写一个函数:在字符串中找出连续最长的数字串,把这个最长数字串返回。

例如:输入字符串"abcd12345ed125ss123456789",函数将返回"123456789"

113)写个程序随机生成int a[20] 20个数,再自写算法对其进行排序。

114)编写一个函数采用递归算法实现求整数n的阶乘。

115)根据表结构回答以下问题,并写出对应的SQL语句

dept:

deptno(primary key),dname,location

emp:

empno(primary key),ename,job,mgr,sal,deptno

a)列出emp表中各部门的部门编号,最高工资,最低工资

b)列出‘张三’所在部门中每个员工的姓名与部门号

c)对于emp中低于自己工资至少5人的员工,列出其部门号,姓名,工资,以及

工资少于自己的人数

116)

117)表Table1 字段 ID, name, password, mail ,表Table2 字段 ID,FID(外键表Table1),IP, date 1)、通过SQL 语句向Table1 表中插入一条数据。

2)、通过主外键关系查出name 等于李华所对应的表Table2的所有记录。

3)、查询Table1中ID 不再Table 2的所有记录。

4)、查询Table2 中相同IP记录数大于两条的所有记录

118)根据下面一段XAML代码回答几个问题