C#笔试题以及英文面试题

  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类把代理对象返回给远程对象。

 

本文已影响6827
上一篇:C#面试题集 下一篇:C#面试题及答案

相关文章推荐

|||||