.NET面试题整顿之基础篇1、什么是面向对象面向对象OO=面向对象的分析OOA+面向对象的设计OOD+面向对象的编程OOP;通俗的解释就是万物皆对象,把所有的事物都看作一种个可以独立的对象(单元),它们可以自己完毕自己的功能,而不是像C那样提成一种个函数;目前纯粹的OO语言重要是java和C#,C++也支持OO,C是面向过程的。2、简述private、protected、public、internal修饰符的访问权限。private:私有组员,在类的内部才可以访问。protected:保护组员,该类内部和继承类中可以访问。public:公共组员,完全公开,没有访问限制。internal:目前途序集内可以访问。3、ADO.NET中的五个重要对象Connection:重要是启动程序和数据库之间的连结。没有运用连结对象将数据库打开,是无法从数据库中获得数据的。这个物件在ADO.NET的最底层,我们可以自己产生这个对象,或是由其他的对象自动产生。Command:重要可以用来对数据库发出某些指令,例如可以对数据库下达查询、新增、修改、删除数据等指令,以及呼喊存在数据库中的预存程序等。这个对象是架构在Connection对象上,也就是Command对象是透过连结到数据源。DataAdapter:重要是在数据源以及DataSet之间执行数据传播的工作,它可以透过Command对象下达命令后,并将获得的数据放入DataSet对象中。这个对象是架构在Command对象上,并提供了许多配合DataSet使用的功能。DataSet:这个对象可以视为一种暂存区(Cache),可以把从数据库中所查询到的数据保留起来,甚至可以将整个数据库显示出来。DataSet的能力不只是可以储存多种Table而已,还可以透过DataAdapter对象获得某些例如主键等的数据表构造,并可以记录数据表间的关联。DataSet对象可以说是ADO.NET中重量级的对象,这个对象架构在DataAdapter对象上,自身不具有和数据源沟通的能力;也就是说我们是将DataAdapter对象当做DataSet对象以及数据源间传播数据的桥梁。DataReader:当我们只需要循序的读取数据而不需要其他操作时,可以使用DataReader对象。DataReader对象只是一次一笔向下循序的读取数据源中的数据,并且这些数据是只读的,并不容许作其他的操作。由于DataReader在读取数据的时候限制了每次只读取一笔,并且只能只读,因此使用起来不仅节省资源并且效率很好。使用DataReader对象除了效率很好之外,由于不用把数据所有传回,故可以减少网络的负载。ADO.NET使用Connection对象来连接数据库,使用Command或DataAdapter对象来执行SQL语句,并将执行的成果返回给DataReader或DataAdapter,然后再使用获得的DataReader或DataAdapter对象操作数据成果。4、列举ASP.NET页面之间传递值的几种方式。1.使用QueryString,如....?id=1;response.Redirect()....2.使用Session变量3.使用Server.Transfer4.Cookie传值5.Application传值5、C#中的委托是什么?事件是不是一种委托?委托可以把一种措施作为参数代入另一种措施。委托可以理解为指向一种函数的引用。是,是一种特殊的委托。6、override与重载的区别重载是措施的名称相似。参数或参数类型不一样,进行多次重载以适应不一样的需要Override是进行基类中函数的重写。为了适应需要。7、描述一下C#中索引器的实现过程,与否只能根据数字进行索引?不是。可以用任意类型。8、三层架构一般意义上的三层架构就是将整个业务应用划分为:体现层(UI)、业务逻辑层(BLL)、数据访问层(DAL)。辨别层次的目的即为了“高内聚,低耦合”的思想。体现层(UI):通俗讲就是展现给顾客的界面,即顾客在使用一种系统的时候的所见所得。业务逻辑层(BLL):针对详细问题的操作,也可以说是对数据层的操作,对数据业务逻辑处理。数据访问层(DAL):该层所做事务直接操作数据库,针对数据的增添、删除、修改、更新、查找等每层之间是一种垂直的关系。三层构造是N层构造的一种,一般来说,层次之间是向下依赖的,下层代码未确定其接口(契约)前,上层代码是无法开发的,下层代码接口(契约)的变化将使上层的代码一起变化。长处:分工明确,条理清晰,易于调试,并且具有可扩展性。缺陷:增长成本。9、MVC模式MVC(ModelViewController)模型-视图-控制器M...