您的位置:首页 > 职场人生

.net面试题常用面试题

2011-11-25 13:10 148 查看
1, 请你说说.NET中类和结构的区别?

  答:结构和类具有大体的语法,但是结构受到的限制比类要多。类的关键字是class,而结构的关键字是struct, 结构不能申明有默认的构造函数,为结构的副本是又编译器创建和销毁的,所以不需要默认的构造函数和析构函数。结构是值类型,所以对结构变量所做的改变不会影响其的原值,而类是引用类型,改变其变量的值会改变其原值。向方法传递结构是时是通过值传递的,而不是通过引用。与类不同,结构的实例化可以不使用New关键字。类可以实现接口。
  2, 接口是否可以继承接口?抽象类是否可以实现接口?抽象类是否可以继承实体类?
  答:接口是可以继承接口的,抽象类是可以实现接口的,抽象类可以继承实体类,但是有个条件,条件是,实体类必须要有明确的构造函数。
  3, 构造器Constructor是否可以被继承?是否可以被Override?
  答:Constructor不可以被继承,因此不能被重写(Overriding),但可以被重载(Overloading).
  4, 当一个线程进入一个对象的方法后,其它线程是否可以进入该对象的方法?
  答:不可以,一个对象的方法只能由一个线程访问。
  5, 用最有效的方法算出等已8对于几?
  答:2<<3.
  6, C#是否可以对内存直接进行操作?
  答:可以这样问答。C#是可以对内存进行直接操作的,虽然很少用到指针,但是C#是可以使用指针的,在用的时候需要在前边加unsafe,,在.net中使用了垃圾回收机制(GC)功能,它替代了程序员,不过在C#中不可以直接使用finalize方法,而是在析构函数中调用基类的finalize()方法。
  7, Error和Exception有是区别?
  答:error表示恢复不是不可能,但是很困难,exception表示一种实际或实现问题,它表示程序运行正常不可以发生的。
  8, 谈谈final,finally,finallize的区别?
  答:final用于申明属性,方法和类,表示属性不可变,方法不可以被覆盖,类不可以被继承。
  Finally是异常处理语句结构中,表示总是执行的部分。
  Finallize表示是object类一个方法,在垃圾回收机制中执行的时候会被调用被回收对象的方法。
  10, HashMap和Hashtable区别?
  答:HashMap是Hashtable的轻量级实现,非线程安全的实现他们都实现了map接口,主要区别是HashMap键值可以为空null,效率可以高于Hashtable。

12,Override, Overload,的区别?
  答:Override是重写的意思,它表示重写基类的方法,而且方法的名称,返回类型,参数类型,参数个数要与基类相同。
  Overload是重载是意思,它也表示重写基类的方法,但是只要方法名相同,别的可以不同。
  13,在一个BS结构中需要传递变量值时,不能使用session,coolke,application,你有几中方法?
  答:this.server.Transfer,Querystring.
  14, C#种索引器实现过程,是否只能根据数字索引?
  答:不是的,可以是任意类型。
  16,New有种用法?
  答:有3种,第一种是,实例化如:New Class()
  第二种是,public new 隐藏基类的方法
  第三种是,在泛型类申明中的任何类型参数都必须有公共的无参构造函数。
  17,任何把一个Array复制到Arraylist中?
  答:Foreach (object o in Array), ArrayList.Add (0)
  等有好多中种方法。

  18,概述反射和序列化?
  答:反射:要给发射下一个定义还是比较难的,这里先说说我的理解。反射提供了封装程序集,模块和类型对象,可以用反射动态地创建类型的实例,将类型绑定到现有对象,或者从现有对象类型里获取类型,然后调用类型的方法或访问字段和属性。
  序列化:将对象转换为另一种媒介传输的格式过程。如,序列化一个对象,用Http通过internet在客户端和服务器之间传递该对象,在另一端用反序列化从该流中重新得到对象。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: