- 1、本文档共45页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
面向对象程序设计2课件.ppt
学习目标 确定系统中的对象 确定对象的属性及操作 测试对象的有效性 区分对象和类 说出面向对象的编程和过程化编程之间的区别 解释封装的主要好处 列出软件开发的主要步骤 对象 (object) 我们可以把生活所在的真实世界(Real World)当作是由许多大小不同的对象所组成的。对象可以是有生命的个体,比如一个人或一只鸟。 对象 对象也可以是无生命的个体,比如一辆汽车或一台计算机。 对象也可以是一件抽象的概念,如天气的变化或鼠标所产生的事件。 对象的特征 对象有两个特征:属性和行为 例如: 人有他的身高或体重作属性,有他的行为——如唱歌、打球、骑摩托车、开汽车。 狗有它的颜色作属性,有它的行为,如吠叫或跳跃。 电视机有它的外形、尺寸和颜色,有它的行为,如开、关,接收信号,转换频道,调节音量。 汽车对象 以汽车为例,我们可定义其属性与方法如: 分析问题域 实验目标:找出问题域中的对象,及其属性和操作 步骤:1、列出有关的对象(名词) 2、列出这些对象的属性和操作 3、为对象设置合理的属性和操作 4、应用上述的3条评判规则检验对 象的有效性 练习 An object-oriented design for a Java application that tracks soccer scores.The program should track: The number of goals each player scores in each game What teams the players play for and what season the games were play in 类(class) 在真实世界里,有许多同“种类”的对象。而这些同“种类”的对象可被归类为一个“类”。例如我们可将世界上所有的汽车归类为汽车类,所有的动物归为动物类。 类与对象 实例 (instance) 汽车类有些共同的状态(汽缸排气量,排档数,颜色,轮胎数……)和行为(换档,开灯,开冷气……),但每一台汽车个别的状态及方法可不同于且独立于其他汽车 。 你的汽车只是这世界中许多汽车中的一个。我们就称你的汽车对象是汽车类中的一个实例(instance)。 OO的真正意义 OO的真正意义是使得软件开发接近人类的正常思维,将许多原来由人完成的工作交给机器去完成: -机器语言 汇编语言 高级语言 -面向过程 面向模块 面向对象 OO包括一套比较完整的方法,程序设计只是其中一个环节。 -面向对象的分析 -面向对象的设计 -面向对象的程序设计 -代码重用 OOP三大特性:封装、继承与多态 封装(encapsulation ) 封装是一种信息隐藏技术。 是指利用抽象数据类型将数据和基于数据的操作封装在一起,数据被保护在抽象数据类型的内部,系统的其他部分只有通过在数据外面的被授权的操作才能够与这个抽象数据类型进行交互。 在面向对象的编程中,用类来封装相关的数据和 方法,保证了数据的安全和系统的严密性。 封装的优点 隐藏类的实现细节,实现了信息的隐藏及安全性; 提高了程序的模块化,且易于维护; 具体实现是编写该类的人控制的,让使用者只能通过事先定制好的方法来访问数据,可以方便地加入控制逻辑,限制对属性的不合理操作 继承 (inheritance) OOP是以类来定义一个对象的。 当一个类拥有另一个类的所有数据和方法时,就称这两个类之间具有继承关系。 现以下图来说明: 继承 多态 用同一个名字调用实现不同操作的方法 方式1:父类和子类之间的同名方法 (覆盖:子类方法的名称和参数与父类方法的名称和参数相同,在执行过程中,子类的方法将覆盖父类的方法) 方式2:同一类中参数不同的同名方法 (重载:不是子类对父类同名方法的重新定义,而是类对自身已有的同名方法的重新定义。重载方法的参数必须不同,或者是参数个数不同,或者是参数类型不同) 使用方便,且降低了维护和编程量
您可能关注的文档
- 陈设艺术的魅力课件.ppt
- 陈鸣网络讲义3课件.ppt
- 降低3#汽轮机进汽量2009QC)课件.ppt
- 降低异形瓶稻花香小酒次品率课件.ppt
- 降低模具制造成本的途径课件.ppt
- 降阻剂施工前的检查与具体使用方法课件.ppt
- 陕教版初中八下3111竞争合作谋发展ppt课件课件.ppt
- 陕西2011历史高考题课件.ppt
- 陕西地方戏3课件.ppt
- 陕西民俗文化课件.ppt
- 2025江浙沪居民睡眠健康小调研报告.pdf
- 毕业论文的开题报告范文.docx
- 团委活动方案(拓展).docx
- 汽车智能驾驶行业深度报告:端到端与AI共振,智驾平权开启新时代.pdf
- 小核酸行业深度:技术平台和适应症不断验证,迎来销售和临床密集兑现期-华福证券-2025.3.31-65页.docx
- 医药生物行业医疗AI专题报告二多组学篇AI技术驱动精准诊断实现重要突破-25031440页.docx
- CXO行业系列报告三寒冬已过行业需求逐步回暖-25031430页.docx
- 全国租赁市场报告2025年3月_可搜索.pdf
- 玩具行业“情绪经济”专题:创新玩法+IP赋能,重新定义玩具-华鑫证券-2025.docx
- 医疗保健行业PCAB抑制剂药物深度报告抑酸药物市场空间广阔PCAB抑制剂大有可为-25.pdf
文档评论(0)