- 1、本文档共18页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
低耦合原则难点开.ppt
* * 第7章 面向对象的几个基本原则 * 主要内容 UML类图简介 面向抽象原则 开-闭原则 多用组合少用继承原则 高内聚-低耦合原则 难点 开-闭原则 导读 本章给出面向对象设计的几个基本原则,了解这些基本原则,有助于知道如何使用面向对象语言编写出易维护、易扩展和易复用的程序代码。 * §7.1 UML类图简介 UML(Unified Modeling Language)类图(Class Diagram)属于结构图,常被用于描述一个系统的静态结构。 * §7.1.1 类的UML图 在类的UML图中,使用一个长方形描述一个类的主要构成,将长方形垂直地分为三层。 ◆第1层是名字层 ◆第2层是变量层,也称属性层,列出类的成员变量及类型,格式是“变量名字:类型”。 ◆第3层是方法层,也称操作层,列出类的方法及返回类型,格式是“方法名字(参数列表):类型”。 * §7.1.2 接口(Interface) 表示接口的UML图使用一个长方形描述一个接口的主要构成,将长方形垂直地分为三层。 ◆顶部第1层是名字层,用interface修饰名字。 ◆第2层是常量层,列出接口中的常量及类型,格式是“常量名字:类型”。 ◆第3层是方法层,也称操作层,列出接口中的方法及返回类型,格式是“方法名字(参数列表):类型”。 * §7.1.3 泛化关系(Generalization) 对于面向对象语言,UML中所说的泛化关系就是指类的继承关系。 如果一个类是另一个类的子类,那么UML通过使用一个实线连接两个类的UML图来表示二者之间的继承关系,实线的起始端是子类的UML图,终点端是父类的UML图,但终点端使用一个空心的三角形表示实线的结束。 * §7.1.4 关联关系(Association) 如果A类中成员变量是用B类(接口)来声明的变量,那么A和B的关系是关联关系,称A关联于B。 如果A关联于B,那么UML通过使用一个实线连A和B的UML图,实线的起始端是A的UML图,终点端是B的UML图,但终点端使用一个指向B的UML图的方向箭头表示实线的结束。 * §7.1.5 依赖关系(Dependency) 如果A类中某个方法的参数用B类(接口)来声明的变量或某个方法返回的数据类型是B类型的,那么A和B的关系是依赖关系,称A依赖于B。如果A依赖于B,那么UML通过使用一个虚线连A和B的UML图,虚线的起始端是A的UML图,终点端是B的UML图,但终点端使用一个指向B的UML图的方向箭头表示虚线的结束。 * §7.1.6 实现关系(Realization) 如果一个类实现了一个接口,那么类和接口的关系是实现关系,称类实现接口。UML通过使用虚线连接类和它所实现的接口,虚线起始端是类,虚线的终点端是它实现的接口,但终点端使用一个空心的三角形表示虚线的结束。 * §7.1.7 注释(Annotation) UML使用注释为类图提供附加的说明。 UML在一个带卷角的长方形中显示给出的注释,并使用虚线将这个带卷角的长方形和所它所注释的实体连接起来。 * §7.2 面向抽象原则 §7.2.1 抽象类和接口 在这里我们提炼一些抽象类和接口二者最重要的知识点,以便使读者更加容易的理解面向抽象的原则。 1 抽象(abstract)类具有如下特点: ◆抽象类中可以有abstract方法,也可以有非abstract方法。 ◆抽象类不能用new运算符创建对象。 ◆如果一个非抽象类是某个抽象类的子类,那么它必须重写父类的abstract方法。 ◆抽象类声明的对象做上转型对象。 A.java,B.java,Application.java 2.接口(interface)具有如下特点: ◆接口中只可以有public权限的abstract方法,不能有非abstract方法。 ◆接口由类去实现,即一个类如果实现一个接口,那么它必须重写接口中的abstract方法。 ◆接口回调。 Com.java,ComImp.java,Application.java * §7.2.2 面向抽象 所谓面向抽象编程,是指当设计一个类时,不让该类面向具体的类,而是面向抽象类或接口,即所设计类中的重要数据是抽象类或接口声明的变量,而不是具体类声明的变量。 ◆ Circle.java,Pillar.java ◆Geometry.java,Pillar.java,Circle.java,Rectangle.java ,Application.java * §7.3 开-闭原则 所谓 “开-闭原则”
您可能关注的文档
- 乳腺钼靶照片技术标准乳腺X线摄影上岗指南编委会1.概述1.1乳腺摄影.doc
- 事中事后监管制度-沙河市.doc
- 二八九年度中期业绩.PDF
- 云南白药巧治妇科病.PDF
- 云林县文光国小弹性课程资讯教育教学进度表.doc
- 五、问卷调查结果及改进方向-岭东科技大学.doc
- 五功能遥控集成电路TX一2RX一2及其应用-DataSheet.PDF
- 人C4结合蛋白(C4BP)酶联免疫分析.doc
- 人工智能辅助诊断技术管理规范(2017年版).PDF
- 人抗EB病毒抗体(EBV)酶联免疫分析试剂盒使用方法.doc
- 功能设计_MM_MM015_报废单_20080109_v2.0.doc
- 功能设计_MM_MM021_采购订单批导入程序_20080108_v1.0.doc
- 功能设计_MM_MM020_出库单_20071205_v2.1.doc
- 功能设计_MM_MM019_入库单_20071205_v2.1.doc
- 功能设计_MM_MM018_领料单_20080114_v2.0.doc
- 功能设计_MM_MM016_ERP与招投标系统接口_20080327_v1.2.doc
- 功能设计_MM_MM014_退库单_20080109_v1.0.doc
- 功能设计_MM_MM013_物料盘点清单_20080114_v2.0.doc
- 中考数学知识点10 一元一次不等式(组)(2).pdf
- 七年级数学优质课公开课教案教学设计期中综合检测.pdf
文档评论(0)