C#期末复习资料.doc_第1页
C#期末复习资料.doc_第2页
C#期末复习资料.doc_第3页
C#期末复习资料.doc_第4页
C#期末复习资料.doc_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

一、.NET简介与基本语法.NET Framework的组成 解答:第一种.(笼统的的答案)NET Framework 由两部分组成:一、公共语言运行时 (CLR);二、.NET Framework 类库; 另外一种比较完整的解答: 1.程序设计语言及其公共语言规范(CLS);2.应用程序平台(ASP.NET及Window 应用程序等);3.ADO.NET及类库;4.公共语言运行时(CLR);5.开发环境(Visual Studio.NET).NET中主要名称空间及其作用 解答:System.Data 用于访问ADO.NET(使用DataTable、DataSet对象)System.IO 用于操作文件System.Windows.Forms 用于开发Windows应用程序(可以使用MessageBox、Form对象)System.Collections.Generic 可以使用泛型System.Net 可以对网络协议进行编程System.Security提供系统的安全控制功能 System.Data.SqlClient用于访问ADO.NET(使用SqlConnection、 SqlCommand等对象)System.Xml用于处理XML、XML架构、XSL/T转换等System.Web用于Web服务器及浏览器交互等C#基本语法二、面向对象为什么要封装,定义属性的两个访问器,方法的重载,方法参数的引用有几种方法,有什么区别,构造函数的作用是什么,静态方法和实例方法的区别为什么要封装:封装可以有效地保证数据的安全性,并能隐藏类的实现细节,提高程序的可 靠性和安全性,避免不必要的错误出现,提高了程序的抗干扰性。定义属性的两个访问器:get访问函数(访问器);set访问函数(访问器);方法的重载:所谓方法重载是指同一个方法名可以对应多个方法实现,只要他们的参数类型、 参数顺序或者参数个数不完全相同;方法参数的引用有几种方法: 1.值传递方式传递和值引用方式传递;2.输出型参数方式传递; 3.数组型参数方式传递;区别:1、 对于值类型的参数,实参的值将被复制一份给形参,方法代码中对形参的修改并不会 影响到实参;2、 对于引用类型的参数传递,形参和实参实际上会只向同一个对象,代码中对形参的修改 会直接作用于实参,引用传递的参数通过ref关键字加以修饰;3、 输出型参数也是采用引用传递方式,但其形参要求在方法返回之前必须被赋值,输出型 参数用out关键字加以修饰;4、 方法中只允许定义一个数组型参数,而且该参数必须位于参数列表中的最后,数组型参 数所定义的数组必须是一维数组,数组型参数不能同时作为引用型参数或者输出型参数;构造函数的作用是什么:构造函数函数名称和类名相同,且不声明返回值类型,其主要作 用是完成对象的初始化工作静态方法和实例方法的区别使用static修饰的方法称为静态方法;使用实例对象调用的方法叫做实例方法为什么要继承,继承如何实现,子类调用父类的属性和方法的关键字是什么,什么是隐式地调用父类的构造函数,继承具有单根性、传递性为什么要继承:1.模拟了现实世界的关系,实现代码重用,结构更清晰;2.继承简化了人们对事物的认识和描述,能清晰体现相关类间的层次结构关系;3.继承提供了软件复用功能;4.继承通过增强一致性来减少模块间的接口和界面,大大增加了程序的易维护性。继承如何实现: class :,派生类代码子类调用父类的属性和方法的关键字是什么:base什么是隐式地调用父类的构造函数:若果要创建一个派生类的实例,在执行其构造函数代码之前,会隐式地调用基类的构造函数,也就是说在创建一个派生类对象的时候,公共语言运行时会根据继承的层次链找到最后的基类,首先调用基类的构造函数,然后依次调用各级派生类的构造函数;继承具有单根性:C#中子类不能继承多个父类继承具传递性:C#中的类的继承可以传递;什么是多态,如何实现多态,抽象方法、抽象类如何构造,虚方法、抽象方法有什么联系和区别。什么是多态:同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果。也就是说同一事物在不同条件下可以有不同的形态,C#中有编译时多态和运行时多态两种; 如何实现多态:对于多态的实现,有三个关键字 new,virtual,override 的使用 抽象方法、抽象类如何构造:在c#中使用abstract关键字创建仅用于继承用途的类和类成员,即定义派生非抽象类的动能;c#中同样用abstract关键字将此方法定义为抽象方法,并且在实现类中用override修饰符修饰此方法;虚方法、抽象方法有什么联系和区别:只能在抽象类中除了密封类都可以写必须被子类 override可以被子类 override不允许有方法体要有方法体,哪怕是一个分号用 abstract 修饰用 virtual 修饰抽象方法虚方法虚方法为什么要接口,接口如何定义,接口作为返回值和参数的意义、接口和抽象类有何区别结构如何定义,结构和类的区别为什么要接口:C#语言规定一个类只能有一个直接基类,但可以同时支持多个接口,这能够有效的弥补单继承在表达能力上的不足。接口是一种抽象数据类型,它所描述的是功能的“契约”,而不考虑与现实有关的任何因素。接口一旦发布,就不应再做修改,否则就会导致所有支持该接口的类型都变得无效。有了接口可以设计出高质量的代码,并且以另一种方式实现类似多继承之类的功能;接口如何定义:C#中接口使用关键字interface来定义接口的类型,其成员只能是一般方法、属性和索引函数,而不能有字段和构造函数。接口作为返回值和参数的意义:1.接口作为参数传递了实现接口的对象 2.接口作为返回值返回一个实现了接口的对象接口和抽象类有何区别:不同点:抽象类(用abstract定义、只能继承一个类,定义的对象不能实例化、非抽象派生类必须实现抽象方法、需要用override实现抽象方法、抽象类中除了抽象方法之外还可以定义其他方法和字段)接口(用interface定义、可以实现多个接口、实现接口的类必须实现所有的成员、直接实现、只能定义抽象方法)相同点:可以定义对象,但不能实例化对象,可以利用多态性,实现接口或派生类对象的方法的操作!结构和类的区别:结构的定义用关键字struct来修饰,结构类型可以有成员变量和成员方法。区别:1、 结构体定义的字段不能初始化;2、 结构体如果需要调用有参数的构造函数要用new,没有参数的话不用new。3、 结构体是值类型,不是引用类型。4、结构体的构造函数一定要有参数,而类的可以没有参数。静态类和非静态类的区别:静态的从程序一启动就会一直占用内存,不能被实例化,而非静态的只在使用后(实例化)后才会占用内存.但是每实例化个一个对象时又会另外占用内存.值类型,引用类型,装箱,拆箱:整型,浮点型,枚举型,布尔型,结构体等基本数据类型是值类型,数组,string,类是引用类型。所有的类型都有一个共同的基类object类,object类本身是引用类型,所有其他的引用类型都可以和它进行转换,object又同时是所有类型的基类。所有值类型的变量都可以隐式转换为object类型,这个过程叫装箱,object类型可以显示转换到值类型,这个过程叫拆箱。三、文件操作如何使得程序中的数据持久化,为什么需要操作文件:将信息保存在硬盘等持久性媒介上可以实现数据持久化。为了使程序中的数据持久化,数据库成本太大,需要大量的数据,使用起来不合算,所以需要文件。读写文件的步骤,两个枚举FileMode、FileAccess:1、创建一个文件流;2、创建相应的读写器;3、执行读写操作;3、关闭读写器;4、关闭文件流。FileMode指定文件的打开模式,有6种情况,P167.FileAccess指定文件流的读写方式,有3种情况,P167.文件的操作类:File和FileInfo:静态类File的所有方法都是静态的,使用这些方法都需要指定目标文件的路径名,适合对文件只操作一次,FileInfo是静态类File的非静态的版本,可以指定文件的路径名来创建一个FileInfo对象,而后通过其各种实例方法来实现与File类静态方法类似的功能,适合对文件的多次操作。目录的操作类Directory和DirectoryInfo:Directory 类提供对文件夹的拷贝、移动、删除等操作.DirectoryInfo类是一个密封类,它可以用来创建、移动、枚举目录和子目录。DirectoryInfo类包括4个属性,可以用来获取目录的名称、父目录等。两者方法类似,区别是Directory类提供了静态方法而非实例方法。另外,Directory类只提供方法,而没有提供任何特性。序列化:定义一个格式化工具Formatter,通过它自动获取对象所有字段的名称和值,并将其写入到文件流中;或是从文件流中解析出各字段的名称和值,并以此为依据来创建对象,这种技术叫做串行化或序列化。四、ADO.NET什么是连接环境,什么是非连接环境,各有什么优缺点 连接环境是指用户在这种环境下始终保持与数据源的连接 优点 环境易于实施安全控制 同步问题易于控制 数据实时性优于其他环境 缺点 必须保持持续的网络连接 扩展性差 在非连接环境中,中央数据存储的一部分数据可以被独立地复制与更改,在需要时可以与数据源中的数据合并 优点 可以在任何需要的时间进行操作,在必要时才连接到数据源 不独占连接 非连接环境的应用提高了应用的扩展性与性能 缺点 数据不是实时的 必须解决数据的并发性与同步问题数据访问应用模型中各层的概念 客户层,也被称为表现层,主要是用户界面 业务层(中间层),包含业务逻辑的封装以及与数据源交互 数据层,应用中涉及到的数据服务 交互层,提供不同应用,不同平台的集成(如 Web 服务)SqlConnection的主要属性方法事件建立与数据源的连接,如 SqlConnection 用于建立与 Microsoft SQL Server 的连接,OleDbConnection用于建立与任何支持 OLEDB 的数据源的连接在Connection类中常用有两个事件,是StateChang事件,另一个是InfoMessage事件,当Connection对象的状态发生改变时将触发StatuChange事件。当数据库服务器需要传递隐含的重要信息给客户时,将触发此InfoMessage事件。在此事件中,我们可以通过如SqlError对象的相关属性返回由于此次错误的错误级别或错误信息。SqlCommand的主要属性方法执行数据源的命令,如 SqlCommand 可以调用一个 Microsoft SQL Server 的存储过程,XxxCommand 对象的 ExecuteReader 方法可以返回一个 XxxDataReader 对象。SqlDataAdapter的主要属性方法数据适配器的属性SelectCommand 从数据源中读取数据InsertCommand 将数据由数据集插入数据源UpdateCommand 将数据集中更新的行写回数据源DeleteCommand 在数据源中删除数据数据适配器的方法Fill() 使用由SelectCommand属性指定的Select语句从数据源中读取/更新数据到数据集Update() 对数据集DataTable对象中特定的行调用执行Insert、Delete、Update操作的对应的命令对象什么是事务,如何使用 ADO.NET 管理事务事务是一系列相互关联的任务,作为一个整体成功提交或者失败(提交或者回滚),事务具有原子性,隔离性,一致性,持续性。 DataSet、DataTable、DataRow、DataColumn的关系和使用n 数据集 (DataSet)l 与关系数据库相似的对象模型保存数据:表、行、列l 可以在数据集中定义约束条件与关联n 数据表 (DataTable)l 代表了数据集中的表,可以从数据源加载数据l 由数据列组成n 数据列 (DataColumn)l 由 DataType 属性指定对应的数据类型l 需要保持数据列的数据类型与数据库列的类型匹配DataSet DataSet更新过程中可能发生的并发问题,如何解决发生冲突:非连接环境使用了开放式并发机制在一步数据操作完成后数据库锁立即被释放非连接环境使用开放式并发机制保证其他资源对数据库的同步访问保守式并发机制在整个数据操作过程中保持数据库的锁检测冲突:数据适配器配置向导可以产生用来监测冲突的SQL语句当更新数据库时数据更新命令比较数据库中的当前数据与原始值任何不同都会抛出一个冲突解决冲突:使用HasErrors属性来测试错误DataSet.HasErrorsDataTable.HasErrorsDataRow.HasErrors选择下列一种策略解决冲突1、用数据集中的值覆盖曾经有过的数据操作,适用于管理员系统用来强制将数据覆盖数据源中的数据2、保持数据集中冲突行以便后续重新更新数据库,将冲突的数据保存在数据集中以便重试,“使用开放式并发”选项的默认策略3、 拒绝冲突的行并在数据集中回滚到初始值(1)拒绝在本地数据集中冲突的数据,将数据回滚到从数据库中加载得到的初始值(2) 对冲突的数据集、数据表、数据行调用RejectChanges()方法拒绝冲突的行并从数据库得到最近的数据,调用数据集的Clear()方法,重新从数据库中加载数据五、XML文档与操作XML文档标记的命名规则,如何使用XMLDocument1、XML文档标记的命名规则: 标记的命名规则 作为标记名字的字符串必须满足以下要求:1.名称的开头必须是字母或“_”;2. 标记名称中不能有空格;3.名称的字符串只能包含“英文字母”、“数字”、“_”、“-”、“.”等字符。例如下面的标记就是合法标记:2、如何使用XMLDocument:9.ppt六、ASP.NETASP.NET应用程序的创建:10.pptPage指令的使用:10.ppt中第23页母版页的使用,嵌套,动态调用(11.ppt )状态管理的基本特点,ASP.NET中的状态管理:12.ppt七、集合与泛型数组的索引器:1、定义:2、索引器的特点:数组属性只能根据下标(索引)来访问、索引器可以被重载、可以使用更灵活的方式访问,定义访问方式、常用到的索引器DataReader“列名”和DataRow“列名”ArrayList,HashTable,List,Dictionary:ppt31、 Dictionary与HashTable的异同点:相同点:通过key获取value、添加对象方

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论