C#笔试题和英文面试题


Posted in 面试题 onFebruary 07, 2013
1.写一个实现对一段字符串翻转的方法,附加一些条件,如其中包括“,”、“.”,对其设计测试用 例 。
答: using System.Text;
string inputStr = “a,b,c,d,e,f,g,h,i,j,k,l”;
char[] inputChar = inputStr.ToCharArray();
int count = inputChar.Length;
StringBuilder sb = new StringBuilder();
for (int m = count – 1; m >= 0; m–)
{
sb.Append(inputChar[m]);
}
2.对一支纸杯设计测试用例(可以是广义的杯,不一定是某一支特定功能的杯)
开发语言概念题
3.什么是反射?
答:动态获取程序集信息。
反射
公共语言运行库加载器管理应用程序域。这种管理包括将每个程序集加载到相应的应用程序域以及控制每个程序集中类型层次结构的内存布局。

程序集包含模块,而模块包含类型,类型又包含成员。反射则提供了封装程序集、模块和类型的对象。您可以使用反射动态地创建类型的实例,将类型绑定到现有对象,或从现有对象中获取类型。然后,可以调用类型的方法或访问其字段和属性。

4.用Singleton如何写设计模式
答:public class Singleton
{
private static Singleton instance;
public string name;
private Singleton()//将singleton函数变为private,防止直接调用new来创建它.
{
name=”guqi”;
Console.WriteLine(“你只可以看到我一次哦”);
}
public static Singleton GetInstance()
{
if (instance==null)
{
instance=new Singleton();
return instance;
}
else return instance;
}
}
5.C#中的垃圾回收机制是怎样的?
答:.NET Framework 的垃圾回收器管理应用程序的内存分配和释放。每次您使用 new 运算符创建对象时,运行库都从托管堆为该对象分配内存。只要托管堆中有地址空间可用,运行库就会继续为新对象分配空间。但是,内存不是无限大的。最终,垃圾回收器必须执行回收以释放一些内存。垃圾回收器优化引擎根据正在进行的分配情况确定执行回收的最佳时间。当垃圾回收器执行回收时,它检查托管堆中不再被应用程序使用的对象并执行必要的操作来回收它们占用的内存。
6.什么是Application Pool?
答:Web应用,类似Thread Pool,提高并发性能
7.链表和数组的区别,各有什么优缺点.
答:一个可以动态增长,一个固定,性能数组教好
8.Remoting在客户端服务器怎么实现 ?
答:创建一个TcpClientChannel对象,在ChannelServices中注册,然后使用Activator类把代理对象返回给远程对象。
9.什么是友元函数?
答:friendly声明,可以访问protect级别方法
10.用标准C如何实现多态?
答:虚方法
11.什么是虚函数?
答:可以被重写
12.什么是抽象函数?
答:必须被重写
13.什么是内存泄漏,怎样最简单的方法判断被存泄漏 ?
答:C++,C中忘了释放内存,内存不会再次分配

英语题
14.用英文介绍一下使用C#/C++做的项目,主要功能
15.如果要与美国开电话会议,会如何与美国的工程师沟通
16.如果老板认为你的技术落后,你会怎么回答
数据库知识题
17.使用什么工具来调用存储过程
答:ADO.Net
18.SQL Server的两种索引是何形式?索引的作用?索引的优缺点?
答:集聚索引,非聚集索引。提高查询速度。但是会过多的占用磁盘空间。
19.触发器的作用
答:保证数据库操作变更能接到通知
其它知识题及问题
20.什么是Web Service?
答:web服务,是利用SOAP(简单对象访问协议,Simple Object Access Protocol)在HTTP上执行远程方法调用的一种方法,也可以使用WSDL(Web Service Description Language,Web服务描述语言)来完整的描述Web服务,基于XML标准。
21.什么是XML?
答:可扩展标记语言,可以做配置文件,可以传输数据,可以存储数据。
22.Socket怎么实现?
答:Socket 类为网络通信提供了一套丰富的方法和属性。Socket 类允许您使用 ProtocolType 枚举中所列出的任何一种协议执行异步和同步数据传输。Socket 类遵循异步方法的 .NET Framework 命名模式;例如,同步 Receive 方法对应于异步 BeginReceive 和 EndReceive 方法。
如果应用程序在执行期间只需要一个线程,请使用下面的方法,这些方法适用于同步操作模式。
? 如果当前使用的是面向连接的协议(如 TCP),则服务器可以使用 Listen 方法侦听连接。Accept 方法处理任何传入的连接请求,并返回可用于与远程主机进行数据通信的 Socket。可以使用此返回的 Socket 来调用 Send 或 Receive 方法。如果要指定本地 IP 地址和端口号,请在调用 Listen 方法之前先调用 Bind 方法。如果您希望基础服务提供程序为您分配可用端口,请使用端口号 0。如果希望连接到侦听主机,请调用 Connect 方法。若要进行数据通信,请调用 Send 或 Receive 方法。
? 如果当前使用的是无连接协议(如 UDP),则根本不需要侦听连接。调用 ReceiveFrom 方法可接受任何传入的数据报。使用 SendTo 方法可将数据报发送到远程主机。
若要在执行过程中使用单独的线程处理通信,请使用下面的方法,这些方法适用于异步操作模式。
? 如果当前使用的是面向连接的协议(如 TCP),则可使用 Socket、BeginConnect 和 EndConnect 方法来连接侦听主机。通过使用 BeginSend 和 EndSend 方法,或者使用 BeginReceive 和 EndReceive 方法,可以进行异步数据通信。可以使用 BeginAccept 和 EndAccept 处理传入的连接请求。
? 如果您使用的是 UDP 等无连接协议,则可以使用 BeginSendTo 和 EndSendTo 来发送数据报,而使用 BeginReceiveFrom 和 EndReceiveFrom 来接收数据报。
如果对一个套接字执行多个异步操作,它们不一定按启动时的顺序完成。
当数据发送和数据接收完成之后,可使用 Shutdown 方法来禁用 Socket。在调用 Shutdown 之后,可调用 Close 方法来释放与 Socket 关联的所有资源。
通过 Socket 类,您可以使用 SetSocketOption 方法来配置 Socket。可以使用 GetSocketOption 方法来检索这些设置。

Tags in this post...

面试题 相关文章推荐
Android面试宝典
Aug 06 面试题
武汉英思工程科技有限公司–ORACLE面试测试题目
Apr 30 面试题
盛大笔试题
Nov 05 面试题
什么是静态路由?什么是动态路由?各自的特点是什么?
Sep 16 面试题
什么是符号链接,什么是硬链接?符号链接与硬链接的区别是什么?
Jan 19 面试题
进程的查看和调度分别使用什么命令
Mar 25 面试题
传统软件工程与面向对象的软件工程有什么区别
May 31 面试题
What is EJB
Jul 22 面试题
什么是lambda函数
Sep 17 面试题
Python如何实现单例模式
Jun 03 面试题
什么是servlet
May 08 面试题
非常详细的C#面试题集
Jul 13 #面试题
介绍一下MD5加密算法
Nov 12 #面试题
介绍一下常见的木马种类
Nov 15 #面试题
局域网标准
Sep 10 #面试题
什么是静态路由,其特点是什么?什么是动态路由,其特点是什么?
Jul 26 #面试题
作为网站管理者应当如何防范XSS
Aug 16 #面试题
能否解释一下XSS cookie盗窃是什么意思
Jun 02 #面试题
You might like
百度工程师讲PHP函数的实现原理及性能分析(一)
2015/05/13 PHP
Yii全局函数用法示例
2017/01/22 PHP
ThinkPHP中Widget扩展的两种写法及调用方法详解
2017/05/04 PHP
PHP封装mysqli基于面向对象的mysql数据库操作类与用法示例
2019/02/25 PHP
javascript中的new使用
2010/03/20 Javascript
js网页侧边随页面滚动广告效果实现
2011/04/14 Javascript
jquery特效 幻灯片效果示例代码
2013/07/16 Javascript
jQuery产品间断向下滚动效果核心代码
2014/05/08 Javascript
js调试系列 初识控制台
2014/06/18 Javascript
js 判断图片是否加载完以及实现图片的预下载
2014/08/14 Javascript
js读取cookie方法总结
2014/10/31 Javascript
jQuery+ajax中getJSON() 用法实例
2014/12/22 Javascript
简单的jQuery入门指引
2015/07/28 Javascript
Vue.js每天必学之构造器与生命周期
2016/09/05 Javascript
原生JS实现垂直手风琴效果
2017/02/19 Javascript
基于JavaScript实现类名的添加与移除
2017/04/23 Javascript
jquery图片放大镜效果
2017/06/23 jQuery
jQuery中each循环的跳出和结束实例
2017/08/16 jQuery
Vue的MVVM实现方法
2017/08/16 Javascript
JavaScript的词法结构精华篇
2018/10/17 Javascript
vue中v-for循环给标签属性赋值的方法
2018/10/18 Javascript
详细分析JavaScript中的深浅拷贝
2020/09/17 Javascript
vue项目页面嵌入代码块vue-prism-editor的实现
2020/10/30 Javascript
Python查找相似单词的方法
2015/03/05 Python
Python脚本在Appium库上对移动应用实现自动化测试
2015/04/17 Python
python如何实现从视频中提取每秒图片
2020/10/22 Python
Python调用ffmpeg开源视频处理库,批量处理视频
2020/11/16 Python
使用phonegap获取设备的一些信息方法
2017/03/31 HTML / CSS
DBA的职责都有哪些
2012/05/16 面试题
C#实现对任一张表的数据进行增,删,改,查要求,运用Webservice,体现出三层架构
2014/07/11 面试题
优秀的教师个人的中文求职信
2013/09/21 职场文书
西门豹教学反思
2014/02/04 职场文书
大学应届生的自我评价
2014/03/06 职场文书
高中生逃课检讨书
2014/10/10 职场文书
社区党建工作汇报材料
2014/10/27 职场文书
springboot读取nacos配置文件
2022/05/20 Java/Android