近开始找.net开发类的工作,经过了一系列的面试后,对一些面试时经常提到的问题作一些归纳,答案属于个人看法,仅供大家参考:
1.重载(Overload )和覆写(override)的区别
方法重载:当类包含两个名称相同但签名不同(方法名相同,参数列表不相同)的方法时发生方法重载。用方法重载来提供在语义上完成相同而功能不同的方法。
覆写:在类的继承中使用,通过覆写子类方法可以改变父类虚方法的实现。
2.接口与继承的区别?什么时候使用接口,什么时候使用继承?
1 接口定义一个类型需要实现的方法,属性,索引和事件,包括可能的参数类型和返回值类型,而把具体的实现交由相应的类或结构来做,从而为组件提供多态能力。
2 继承常用于在一个现有父类的基础上的功能扩展,往往是我们将几个类中相同的成员提取出来放在父类中实现,然后在各自的子类中加以继承。
3 接口可以实现多接口继重,而继承只能实现单继承。
4 实现继承可继承父类型的实现,由于接口中没有定义方法的实现,因此必须实现继承后该接口的所有方法。
5 为父类型添加方法可能不影响使用继承自该类型实现的用户,而为接口添加方法导致用户必须为新方法添加实现。
6 当派生类和基类是is-a的关系是使用“继承”,典型案例“苹果 is-a 水果”,存在can-do的关系时使用“接口”
3.ado,ado.net的区别?----------------------------------------------------------------
4.asp.net页面在什么时候产生?又在什么时候销毁?
5.Session,ViewState,Application,cookie的区别?
Session:Session用于保持状态的基于 Web 服务器的方法。Session 允许通过将对象存储在Web 服务器的内存中在整个用户会话过程中保持任何对象。主要用于保持代码隐藏类中对象的状态。为每个用创建的,用于存储单个用户,因为他是相对每个用户的.所以可能来取得在线人数等。
ViewState:主要用于保持 Web 页上控件的状态。当 Web 页上的控件被绑定到代码隐藏类中的对象。
Application用于存储所有用户都可视的信息.所以它存储的是要让所有用户共享的一些信息.如总访问数等;
Cache:页面缓存。
cookie:通常我们都把它放在客户端,也可以存储在服务器端。主要用它存储用户的个性设制,和登陆信息。
来自:http://blog.csdn.net/xiaozhi_620/archive/2007/03/26/1541601.aspx