- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
L02A面向对象基本概念1
面向对象设计方法 L02 A 面向对象的基本概念1 吴小竹 对象概念的三种观点 第一种观点:从数据结构的角度看,对象是一种复杂的数据类型. 第二种观点:从软件结构的角度看,对象是一个完备的模块,包含了能完成一定功能的函数和局部数据. 第三种观点:从设计分析的角度看,对象是一个活动的实体,可以代表世界的万事万物. 对象的内部结构 对象:对象是一个拥有属性,行为和标志符的实体. 属性: (第三种观点)描述对象的状态,特征.(第一种观点)属性也就是变量. (第二种观点)属性是程序要处理的数据. 行为: (第三种观点)对象具有的改变自身或其他对象状态的活动. (第一种观点)行为也就是函数. (第二种观点)行为是程序所完成功能的实现. 标志符:用于区别对象. 类的概念 类:对一组相似的对象的描述,这一组对象有共同的属性和行为. 对象与类的关系: 对象是类的实例,类是对象的“模版”. 同一类的对象,具有不同的属性值,但具有相同的方法. 方法的类型 属性过程:对属性的存取操作,维护对象的状态. 服务函数:为其他函数提供服务.比如字符串查找,排序等. 接口函数:类和外界打交道的接口,类通过接口函数为外界提供服务. 对象控制函数:实现对象生命周期的典型功能,控制对象的创建和销毁. 面向对象技术的若干概念 面向对象系统的基本特征: ---利用对象进行抽象 ---封装 ---消息通信 ---对象生命周期 ---类层次结构 ---多态 面向对象技术的若干概念 抽象:主要是提炼相对某种目的的重要的方面,而忽略次要的方面. ---目的决定了哪些方面是重要的,因此,根据目的的不同,对同一事物可以有不同的抽象. ---是所有程序设计方法的基本工具. 面向对象技术的若干概念 封装的类---信息隐藏 ---阻止外界直接对类的状态信息的访问,仅提供方法用以访问和改变它的状态,提高类的安全性. ---提高对象的独立性,有利于灵活地局部修改,提升了程序的可维护性. 面向对象技术的若干概念 封装是所有常用的信息系统开发方法的普遍特点. ---传统方法将数据和功能分开封装. ---面向对象技术则是把功能和数据封装进入对象. 面向对象技术的若干概念 消息通信: --是对象协作的灵活机制. --模拟现实系统中对象之间的联系. --对象之间联系的方法---利用消息进行通信. 消息:从发送方向接收方发出的执行服务的请求. .发送消息通过调用某个类的方法来实现. .接收消息通过被其他对象调用本类的方法被实现. 面向对象技术的若干概念 生命周期: --设计期:类的生命周期(设计,实现) --运行期:对象的生命周期: 面向对象技术的若干概念 类层次结构: 关联:描述类之间的关系. 面向对象技术的若干概念 继承: --体现了类之间的关联关系,该关系把类分成父类和子类. --代表了概念之间的扩展关系,与人们认知事物的认知过程一致: 由一般到具体,由模糊到清晰. 例:起大雾的清晨,远远地看到一个黑影 有一个东西?是个人影?是个小孩?一个小男孩?一个戴着红色棒球帽的小男孩 --能够实现某个类无需重新定义就拥有另一个类的某些属性和方法,达到复用和灵活设计的目的,也利于代码的统一维护. 面向对象技术的若干概念 继承的若干种情况: ---一般继承:一个父类拥有一个或多个子类. ---多继承:一个子类拥有多个父类,描述了现实系统里的概念叠加. 例:铁锅就是金属和容器这两个概念的叠加. 多继承可能带来定义冲突,如两个父类具有同名的方法. ---实现式继承:父类方法只有声明,没有实现. 面向对象技术的若干概念 继承树:单继承 面向对象技术的若干概念 继承属性,继承方法 --子类具有父类的所有属性. --重载:在同一类内部,为同名的方法指定不同的参数列表和返回值. --覆盖:子类为超类的属性和方法指定了新的定义. 面向对象技术的若干概念 在设计类之间的继承关系时,应注意: ---用isa进行继承关系的测试. an A(子类) is a B(父类) (A是一个B) ---父类和子类之间要确实存在继承关系. 如错误的设计: (父类)猫科动物 – (子类)狗 ---子类的对象在其生存期内必须保持独特性. 如错误的设计: (父类)小灵通用户 – (子类)欠费用户 ---所有继承下来的特性在每个子类中都必须有意义. 如错误的设计: (父类)车,含属性-油量 (子类)汽车 (子类)自行车 面向对象技术的若干概念 多态: ---与继承相关的概念.从共
文档评论(0)