net研发工程师面试题

初级研发工程师面试的题目

基础方面:

1.简单的描述一下C# 中重写,重载,隐藏的概念

2.执行string str=”xxx”+"yy”+"zz”所分配的内存

3.string和String以及object与Object有什么区别

4.请看下面代码:

   string str1=”a”;

   string str2=str1;

   str1=”a”+"b”;

   问str1是否和str2相等。

5.简单的描述下HashTable和Dictionary的区别,能否说说这两种结构在遇到哈希冲突时的解决方案

6.ArrayList可以认为他是动态数组,请问他是怎么解决数组不需要预定义内存分配大小的问题的

7.简单的描述一下委托和事件以及他们的关系和区别.

8.我们知道.net平台的队列类(Queue)的内部是用数组(Array)实现的,请问你能想象一下是怎么实现的吗?

9.在这样的一个数组里面

    A[0] = "are"
    A[1] = "few"
    A[2] = "girls"
    A[3] = "in"
    A[4] = "Missouri."
    A[5] = "Rolla,"
    A[6] = "There"

需要寻找"There"需要经历O(n)的复杂度,随着n的增大,性能的消耗也会加大,请问怎么减少查找的性能损失.

10.C#里如何在某一时刻知道某个类的当前的实例个数,要求不影响正常的垃圾回收.

11.虚方法和接口的区别.虚方法的实现原理是什么?

12.struct和class的区别,简单描述他们的相同点,不同点,以及在内存中的存储方式

13.能简单的叙述下动态规划算法的的步骤吗?

14.括号的匹配性检查,如何实现,请简述你的想法. 如{(x+(a+b)+c)},当用户以字符串输入时,如何判断是否括号完整匹配.

 

Web方面:

1.简单的描述下ViewState的实现原理

2.Webservice如何进行针对调用者的权限管理

3.能够简单描述一下MVC干了了什么事情,有哪些好处吗?

4.能够描述一下asp.net的webform的生存周期吗?

DoNet框架方面:

1.什么是CLR.简单的描述一下.net的运行机制

2.值类型和引用类型的区别,以及内存中的存储方式

3.简单描述一下装箱和拆箱,怎么避免带来的性能损失

4.简单描述一下.net下的垃圾回收(GC)机制

http://www.cnblogs.com/Creator/archive/2011/06/07/2074607.html

原文地址:https://www.cnblogs.com/Snowfun/p/2074621.html