欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    C#OOP课程总复习案例Word文件下载.docx

    • 资源ID:3056902       资源大小:20.66KB        全文页数:6页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    C#OOP课程总复习案例Word文件下载.docx

    1、 ? 子类中没指名调用父类中的哪一个,父类中必须有一个无参的构造函数,如果指名父类中有参的,父类中可有无参构造函数 ? 在创建子类对象时,子类一定会调用父类的构造函数 2. 显式调用父类构造函数: public SE (string id, string name, int age, int popularity) : base(id , name, age ) this. Popularity = popularity ; 方法重载 定义: 多个构造函数提供了多种实例化一个类的方式,称为 方法重载 。 特点: 1. 方法名称相同 2. 参数的类型不一样,个数,顺序不一致 3. 在同一个类中

    2、优点: 1. 避免命名的麻烦 2. 调用者不必再对参数类型做判断而直接调用 作用: 为了初始化属性,与New一起使用 注意: 仅仅名字相同,但返回类型不同的方法不是重载方法,不能存在于同一个类中 静态方法 特点: 为一个类的所有实体所共享 语法: class 类名 public static 数据类型 变量名; (eg: public static string country = ”China” ; ) public static 返回值 方法名 ( 参数列表 ) /方法体; 调用: 类名.变量名;/访问静态变量 类名.方法名;/调用静态方法 静态成员: 适用于一些不会经常变化而又操作频繁的

    3、数据静态方法若直接调用某个方法,那方法只能是静态的 ? 静态方法和变量属于类本身,使用时不用声明类的实例 ? 实例方法和变量属于类的实例,使用时必须创建类的实例 区别 分类 static 调用 静态成员 直接访问实例成员 直接调用实例方法 初始化 静态方法 需要 类名 可以直接访问 不可以 不能 调用前 实例方法 不需要 实例对象 可以直接访问 可以 可以 静态方法 实例化对象时 对象交互 原理: 对象之间通过属性和方法进行交互,也可认为方法的参数以及方法的返回值都是对象之间相互传递的消息。 示例:顾客点餐 遥控器 二第6章第8章 面向对象特性:封装 、继承、多态 封装: 1. 定义:保证对象

    4、自身数据的完整性和安全性 2. 语法: Private string _name; Public string Name get return _name; set _name = value ; 3. 优点: 保证数据的安全性 ? 提供清晰的对外接口 ? 类内部实现可以任意修改,不影响其他类 继承:符合 is-a 的关系 2. 作用:建立类之间的关系,实现代码复用,方便系统的扩展 3. 包括: 父类(基类)被继承的类 子类(派生类)继承其他类的类 4. 语法: class PM : Employee , class SE : Employee (子类PM,SE继承了父类Employee )

    5、5. 特性: 传递性:eg: 卡车继承汽车,微型卡车继承卡车单根性:一个类只能有一个父类 6. 特点: 模拟了现实世界的关系 ? 实现了代码的重用 ? 使程序结构清晰 7. C#关键字: this 表示当前实例 ? base 用于表示父类,可以用于访问父类的成员 (在子类中可以使用base调用父类的属性) ? protected 允许被其子类访问,而不允许其他非子类访问 ? sealed 密封类 不能被继承的类 1.定义: 相同的方法调用可实现不同的实现方式 2.解决继承的什么问题? 父类的子类很多,方法各不相同,需要用很多的if 判断句 3. 方法的重载也成为方法的多态 4. 如何实现多态:

    6、虚方法抽象方法 虚方法 1. 实现多态的步骤: 实现方法的重写。 父类中定义方法,用virtual 关键字定义虚方法 ? 在子类中定义子类自己的方法,用override 实现了对父类的重写 ? 创建父类变量,用子类对象实例化这个父类变量 ? 把父类类型作为参数类型,它的子类对象作为参数传入 ? 定义父类变量,用子类对象初始化父类变量 2. 示例: 3. 虚方法和抽象方法的区别: 抽象类和抽象方法 1. 语法: 父类 访问修饰符 abstract class 类名 /抽象类 访问修饰符 abstract 返回类型 方法名(); /抽象方法 子类 public class 子类名 : 父类名 访问

    7、修饰符 override 返回类型 方法名() /方法体 2. 要求注意: abstract 声明一个没有实现的抽象方法,它不包含方法体 ? 抽象方法必须在其子类中实现,除非它的子类也是抽象类 ? 如果一个类继承了抽象类,而且本身继承了抽象类,子类中可以不写抽象方法,如果子类不是抽象类,则子类中必写抽象方法。 ? 含有抽象方法的类必然是抽象类 ? 抽象类中的方法可以是:抽象方法-静态方法-实例方法 ? 抽象类不能被实例化,不能是密封的或静态的 3. 示例: 接口() 1. 语法: 接口 访问修饰符 interface class 类名 / 访问修饰符 返回类型 方法名(); 无方法体 实现接口

    8、的类 public class 类名 : 接口名 访问修饰符 返回类型 方法名() /方法体 不须要使用override关键字 接口是一组规范,是一种标准,遵循这个规范和标准就能实现某种功能 2. 要求注意: interface 声明一个接口,接口中的方法是没有方法体的 ? 接口实现它的类直接实现,不须要重写override ? 派生类必须实现接口中的所有方法 ? IComparable接口中有一个未实现的CompareTo(object x)方法 泛型版本IComparable ? IComparer接口中有一个未实现的Compare(object x,Object y) ? 方法泛型版本I

    9、Comparer ? 3. 示例: 设计模式 1. 含义: 长期的软件开发中对一些经验的总结,对某些特定问题经过实践检验的特定的解决办法 2. 共23种设计模式如: 简单工厂设计方法的,返回值类型是父类,方法中可根据选择不同生成子类对象 目的:实例化对象 原理:工厂根据产品类型返回产品对象,客户调用无须关注创建产品的具体子类 父类产品 客户 子类产品A 子类产品B 子类产品C 工厂 什么是抽象工厂设计模式 适用场合:创建的具体对象经常变化 优点:降低类与类之间耦合,提高软件的复用性、扩展性 单例() 确保一个类只有一个实例,并且提供一个全局访问点 。 通常采用私有构造函数确保类不在类的外部被实

    10、例化,通过静态方法返回它的实例。 目的:创建唯一实例 原理:Singleton类定义一个GetInstance(),允许客户访问他的唯一实例。 GetInstance()负责创建自己的唯一实例 适用场合:保证类只有一个实例 抽象工厂提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类 目的:创建一系列相关对象,而不是一个对象 原理:抽象工厂:生产抽象产品。 抽象产品:提供实体产品访问接口 实体工厂:生产实体产品 实体产品:实现自已的功能 抽象工厂抽象产品A 客户 实体工厂1 实体工厂2 实体产品实体产品抽象产品B 实体产品 适用场合:设计我们的三层结构 优点:,提高三层结构的可复

    11、用性 实体产品 三.第10章第12章 TreeView 控件() 1. TreeView的重要属性和事件: 属性 Nodes SelectedNode 事件 AfterSelect 说明 TreeView控件中的所有树节点 当前TreeView控件中选定的树节点,如果当前没有选中树节点,返回值为null 说明 选定树节点之后发生 2. TreeNode的属性:属性 Text Index Level Tag Nodes 说明 节点显示的文本 节点在所在集合的索引 节点在树状菜单中的层级0、1 节点值 节点的所有下一级子节点 3. 用TreeView显示数据: TreeNode TN = new

    12、TreeNode ( “根节点名” ) ? 添加根节点 ( TN ) ; 添加子节点 ( TN ) ; 删除选中的节点 () ; 清空 1. 选中节点的子节点 ( ) ; 2. TreeView控件的所有子节点 ( ) ; 4. 示例: XML解析 1.含义:可扩展标记性语言,不需要二进制转换 using ; 2.特点: 节点可以自扩展 ? 节点区分大小写 ? 每对标记成为节点。且节点必须成对出现 对象的属性方法 对象 含义 属性和方法 说明 XmlDocument XmlNode 4. 使用示例: 表示整个XML文档 表示一个XML中的节点 DocumentElement ChildNode

    13、s Load() InnerText Name ChildNodes 获取根节点 获取所有子节点 获取整个XML中的结构 当前节点的值 当前节点的名字 当前节点的所有子节点 读写文件 1. 读写一个文件的步骤: 1. 创建文件流 2. 创建阅读器或者写入器 3. 执行读写操作 4. 关闭阅读器或者写入器 5. 关闭文件流 2. 需要引用的命名空间 using 3.语法: FileStream fs = new FileStream(, ); / FileStream(文件路径,打开文件的模式) StreamWriter sw=new StreamWriter(fs); / 写入流 Stream

    14、Reader sr = new StreamReader(fs2); /读取流 (Text); (); / 读取 ();读取文件设置的打开模式是();StreamReader(fs2,)解决乱码问题 4. 示例: 文件和文件夹操作 1.文件操作: File类的常用方法 方法 Exists ( string path ) Copy(string SourceFilePath DestinationFilePath) 说明 用于检查指定文件是否存在,返回一个布尔值 ,string 将指定路径的源文件中的内容复制到目标文件中,如果目标文件不存在,则在指定路径中新建一个文件 Move ( string

    15、 sourceFileName , string 将指定文件移动到一个新的路径 destFileName) Delete ( string path ) 删除指定文件,若不存在,则不会引发异常 FileInfo类的属性和方法 () 想要多次使用某个文件对象用FileInfo 属性 Exists Extension Name FullName 方法 CopyTo ( String) Delete () MoveTo (String) 说明 用于检查指定文件是否存在,返回一个布尔值 获取表示文件扩展名部分的字符串 获取文件名 获取目录或文件的完整目录 说明 将现有文件复制到新文件,不允许覆盖现有文

    16、件 永久删除文件 将指定文件移到新位置(string)Directory & DirectoryInfo()类的常用方法 方法 Exists ( string path ) 说明 用于检查指定文件夹在磁盘上是否存在 Move(string sourceDirName , 用于将文件或目录及其内容移到新位置 string destDirName) Delete ( string , bool ) GetDirectories () GetFiles ()示例:小型资源管理器 删除指定目录,如果bool=true,则删除子目录中的所有目录内容 Directory DirectoryInfo Dir

    17、ectory DirectoryInfo 返回值是当前目录的子目录的名称数组 返回当前目录的子目录对象数组 返回值是指定目录下的文件名数组 返回当前目录下文件列表 序列化和反序列化 1. 命名空间 using ; 2. 序列化: 含义:将对象的状态存储到存储介质中的过程 ? 语法:类的头部加 Serializable public void Save() /定义文件流序列化需要通过文件流保存到文件 ? / 文件的路径 BinaryFormatter bf = new BinaryFormatter(); / BinaryFormatter 二进制格式化器 / Serialize是BinaryF

    18、ormatter的方法 ? (fs, cust); 注意: 如果需要格式化某个对象,那么它的成员也必须是可序列化的 ? 若可序列化中有不想序列化的属性,在属性上方加 NonSerialized 标记 3. 反序列化:从特定介质中将数据重新构建对象的过程 ? public void Load() ? FileStream fs = new FileStream(, ); BinaryFormatter bf = new BinaryFormatter(); cust = (Customer)(fs) ; /Deserialize()将存储介质的数据文件流转换为Object类型,所以需要类型转换 4. 示例: 用户订单 特性() 定义:如:Serializable Obsolete 本身称为可序列化特性 特点: 为目标文件(数据集,模块,类,属性,方法,函数参数)加入附加信息,类似于注释 特性本质也是一个类,Serializable对应SerializableAttribute类 特性命名以Attribute结尾,通常省略 自定义特性


    注意事项

    本文(C#OOP课程总复习案例Word文件下载.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开