代码改变世界

关于.NET及面向对象中一些概念的解释

2012-06-29 10:25  Back2Earth  阅读(886)  评论(0编辑  收藏  举报

1.重载(overload)和覆写(override)的区别

答:

方法重载:当类包含两个名称相同但签名不同(方法名相同,参数列表不同)的方法时发生方法重载。用方法重载来提供在语义上完成相同而功能不同的方法。

覆写:在类的继承中使用,通过覆写类方法可以改变弗雷虚方法的实现。

2.接口与集成的区别?什么时候使用接口,什么时候使用继承?

答:

(1)接口定义一个类型需要实现的方法、属性、索引和事件,包括可能的参数类型和返回值类型,而把具体的实现交由相应的类或结构来做,从而为组件提供多态能力。

(2)继承常用于在一个现有弗雷的基础上的功能扩展,往往使我们将几个类中相同

的成员提取出来放在弗雷中实现,然后再各自的子类中加以继承。

(3)接口可以实现借口继承,而继承只能实现单继承。

(4)实现继承可继承父类型的实现,由于接口中没有定义方法的实现,因此必须实现继承后该接口的所有方法。

(5)为父类型添加方法不影响使用继承自该类型实现的用户,而为接口添加方法导致用户必须为新方法添加实现。

(6)当派生类和基类是is-a的关系是使用“继承”,典型案例“苹果 is-a 水果”,存在can-do的关系时使用“接口”。

3.ado,ado.net的区别

答:

您可以通过将ADO.NET的各项功能与ActiveX数据对象(ADO)的特定功能进行比较来理解ADO.NET的功能。

数据的内存表示形式

在ADO中,数据的内存表示形式为记录集。在ADO.NET中,它为数据集。它们之间有重要的差异。

表的个数

记录集看起来像单个表。如果记录集将包含来自多个数据库表的数据,则它必须使用JION查询,将来自各个数据库表的数据组合到单个结果表中。

相反,数据集是一个或多个表的集合。数据集内的表称为数据表;明确地说,它们是DataTable对象。如果数据集包来自多个数据库表的数据,它通常将包含多个DataTable对象。即,对每个DataTable对象通常对应于单个数据库或试图。这样,数据集可以模仿基础数据库的结构。

数据集通常还包含关系。数据集内的关系类似于数据库中的外键关系,即它使多个表中的行彼此关联。例如,如果数据集包含一个有关投资者的表盒另一个有关每个投资者的股票购买情况的表,则数据集可能还包含一个关系来连接投资者表的各个行和购买表的对应行。

由于数据集可以保存多个独立的表并维护有关表之间关系的信息,因此它可以保存比记录集丰富得多的数据结构,包括自关联的表和具有多对多关系的表。

数据导航和游标

在ADO中,您使用ADOMoveNext方法顺序扫描记录集的行为。在ADO.NET中,航表示危机和,因此您可以想一次通过任何集合那样一次通过表,或通过序号索引或逐渐索引访问特定行。DataRelation对象维护有关主记录和详细资料记录的信息,并提供方法使您可以获取与正在操作的记录相关的那组行。

“游标”是数据库元素。。。

4.ASP.NET页面在什么时候产生?又在什么时候销毁?

答:

(1)Page_Init();初始化对象

这一过程主要是初始化包括页面本身的所有空间,每次的页面再如就会执行一次次初始过程,而在这里面访问到的也是空间的初始值。还有就是可以通过OnInit()来重载初始化时间。

(2)LoadViewState导入ViewState数据