C#OOP课程总复习(案例)(2)

2019-01-12 15:30

2.3抽象类和抽象方法

1. 语法:

父类

访问修饰符 abstract class 类名 //抽象类 {

访问修饰符 abstract 返回类型 方法名(); //抽象方法 } 子类

public class 子类名 : 父类名 {

访问修饰符 override 返回类型 方法名() { //方法体 } }

2. 要求注意:

? abstract 声明一个没有实现的抽象方法,它不包含方法体 ? 抽象方法必须在其子类中实现,除非它的子类也是抽象类

? 如果一个类继承了抽象类,而且本身继承了抽象类,子类中可以不写抽象方法,如果子类

不是抽象类,则子类中必写抽象方法。 ? 含有抽象方法的类必然是抽象类

? 抽象类中的方法可以是:抽象方法--静态方法--实例方法

? 抽象类不能被实例化,不能是密封的(sealed)或静态的(static) 3. 示例:(动物喂养)

2.4接口(ACCP5.0)

1. 语法:

接口

访问修饰符 interface class 类名 // {

访问修饰符 返回类型 方法名(); 无方法体 }

实现接口的类

public class 类名 : 接口名 {

访问修饰符 返回类型 方法名() { //方法体 } 不须要使用override关键字

}

接口是一组规范,是一种标准,遵循这个规范和标准就能实现某种功能 2. 要求注意:

? interface 声明一个接口,接口中的方法是没有方法体的 ? 接口由实现它的类直接实现,不须要重写override ? 派生类必须实现接口中的所有方法

? IComparable接口中有一个未实现的CompareTo(object x)方法 泛型版本IComparable ? IComparer接口中有一个未实现的Compare(object x,Object y) ? 方法泛型版本IComparer ? 3. 示例:(MySchool)

2.4设计模式

1. 含义:

长期的软件开发中对一些经验的总结,对某些特定问题经过实践检验的特定的解决办法 2. 共23种设计模式——如:

简单工厂—设计方法的,返回值类型是父类,方法中可根据选择不同生成子类对象

目的:实例化对象

原理:工厂根据产品类型返回产品对象,客户调用无须关注创建产品的具体子类

父类产品 客户 子类产品A 子类产品B 子类产品C 工厂 什么是抽象工厂设计模式

适用场合:创建的具体对象经常变化

优点:降低类与类之间耦合,提高软件的复用性、扩展性

单例(ACCP6.0) —确保一个类只有一个实例,并且提供一个全局访问点 。 通常采用私有构

造函数确保类不在类的外部被实例化,通过静态方法返回它的实例。

目的:创建唯一实例

原理:Singleton类定义一个GetInstance(),允许客户访问他的唯一实例。 GetInstance()负责创建自己的唯一实例

适用场合:保证类只有一个实例

抽象工厂—提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类

目的:创建一系列相关对象,而不是一个对象 原理:抽象工厂:生产抽象产品。

抽象产品:提供实体产品访问接口 实体工厂:生产实体产品 实体产品:实现自已的功能

抽象工厂 抽象产品A 客户 实体工厂1 实体工厂2 实体产品实体产品抽象产品B 实体产品 适用场合:设计我们的三层结构 优点:,提高三层结构的可复用性

实体产品 三.第10章~第12章 3.1 TreeView 控件(ACCP6.0)

1. TreeView的重要属性和事件:

属性 Nodes SelectedNode 事件 AfterSelect 说明 TreeView控件中的所有树节点 当前TreeView控件中选定的树节点,如果当前没有选中树节点,返回值为null 说明 选定树节点之后发生 2. TreeNode的属性: 属性 Text Index Level Tag Nodes 说明 节点显示的文本 节点在所在集合的索引 节点在树状菜单中的层级0、1…… 节点值 节点的所有下一级子节点 3. 用TreeView显示数据:

TreeNode TN = new TreeNode ( “根节点名” )

? 添加根节点

this.tv.Nodes.Add ( TN ) ;

? 添加子节点

this.tv.SelectedNode.Nodes.Add ( TN ) ;

? 删除选中的节点

this.tv.SelectedNode.Remove () ;

? 清空

1. 选中节点的子节点

this.tv.SelectedNode.Nodes.Clear ( ) ; 2. TreeView控件的所有子节点

this.tv.Nodes.Clear ( ) ; 4. 示例:

3.2 XML解析

1.含义:可扩展标记性语言,不需要二进制转换 —— using System.Xml; 2.特点:

? 节点可以自由扩展 ? 节点区分大小写

? 每对标记成为节点。且节点必须成对出现 3.XML对象的属性方法

对象 含义 属性和方法 说明 XmlDocument XmlNode

4. 使用示例:

表示整个XML文档 表示一个XML中的节点 DocumentElement ChildNodes Load() InnerText Name ChildNodes 获取根节点 获取所有子节点 获取整个XML中的结构 当前节点的值 当前节点的名字 当前节点的所有子节点

3.3读写文本文件

1. 读写一个文件的步骤:

1. 创建文件流

2. 创建阅读器或者写入器 3. 执行读写操作

4. 关闭阅读器或者写入器 5. 关闭文件流

2. 需要引用的命名空间 —— using System.IO 3.语法:

FileStream fs = new FileStream(\, FileMode.Create); // FileStream(文件路径,打开文件的模式) StreamWriter sw=new StreamWriter(fs); // 写入流 StreamReader sr = new StreamReader(fs2); //读取流 sw.Write(Text); Console.WriteLine(sr.ReadToEnd()); // 读取 sw.Close(); 读取文件设置的打开模式是 FileMode.Open fs.Close(); StreamReader(fs2,Encoding.Default) 解决乱码问题

4. 示例:

3.4文件和文件夹操作

1.文件操作:

File类的常用方法 方法 Exists ( string path ) Copy(string SourceFilePath DestinationFilePath) 说明 用于检查指定文件是否存在,返回一个布尔值 ,string 将指定路径的源文件中的内容复制到目标文件中,如果目标文件不存在,则在指定路径中新建一个文件


C#OOP课程总复习(案例)(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:农村中学校本研修制度与问题的研究申评书 - 图文

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: