面向对象的程序设计第一章.pptx

上传人:zhu****ei 文档编号:5433648 上传时间:2020-01-29 格式:PPTX 页数:36 大小:836.62KB
返回 下载 相关 举报
面向对象的程序设计第一章.pptx_第1页
第1页 / 共36页
面向对象的程序设计第一章.pptx_第2页
第2页 / 共36页
面向对象的程序设计第一章.pptx_第3页
第3页 / 共36页
点击查看更多>>
资源描述
面向对象的程序设计 Java 姓名 王雯雯 基础科学信息技术系 CellPhone 18953051933QQ 178148221 50 课堂表现 随堂表现 出勤率 课后作业完成情况 50 书面考试 课程考核方式 听而易忘 见而易记 做而易懂 能力的三个层次 知识 学习前人的知识解决问题的方法 灵活运用所学到的知识解决问题的思路 创造解决问题的方法学习方法 课上积极参与 课下动手实践善于发现问题 积极分析问题 勇于解决问题自学能力 读 写 查 背乐观的努力 眼光要高远 脚步要踏实 写在前面的话 理解 掌握面向对象的编程思想掌握Java语言基础知识掌握Java中的类掌握异常处理机制掌握基本的工具类和算法掌握基本的IO操作以及数据库编程基础理解多线程机制运用AWT Swing编写图形用户界面程序 课程内容以及目标 第一章面向对象的程序设计 理解面向对象的设计思想掌握对象和类的概念理解抽象和封装理解类之间的关系理解对象与类之间的关系 本章目标 程序 为解决一个信息处理任务而预先编制的工作执行方案 是由一串CPU能够执行的基本指令组成的序列 每一条指令规定了计算机应进行什么操作 如加 减 乘 判断等 及操作需要的有关数据 算法 求解问题类的 机械的 统一的方法 它由有限多个步骤组成 对于问题类中的每个给定的具体问题 机械地执行这些步骤就可以得到问题的解答 程序 算法 实体 程序设计 算法 给定两个正整数p和q 如何求出p和q的最大公约数g 步骤一 如果p小于q 则交换p和q 步骤二 令r是p除以q的余数 步骤三 如果r等于0 则令g q并终止程序 否则令p q q r 并转向步骤2 程序 算法 实体 程序设计 算法用于解决特定的 问题 算法有若干可机械执行的操作组成 算法可有多个输入和输出 对于任何输入 算法都会终止 算法的主要操作对象是函数 实体向一个银行账户中存款可表达为 从一个银行账户中取款则可描述为 实体 表示数据库中描述的现实世界中的对象或概念 它是客观世界中存在的且可互相区分的事物实体可以是人也可以是物体实物 也可以是抽象概念 程序 算法 实体 程序设计 描述一个实体的概念时 至少应该划分为三个方面的特性 属性 行为 约束 从系统状态的角度看 实体的属性表达了实体的状态 这些状态可由实体的行为来改变 并且实体状态在任何时刻都满足实体的约束 程序 算法 实体 程序设计 程序 算法 实体三者的关系 程序是算法和实体在计算机系统中的体现 程序设计是一种编写计算机程序的活动 为解决某一特定问题而构造一种专用工具的智力活动 要完成程序设计工作必须具备4方面的知识 应用领域知识 程序设计方法 程序设计语言 程序设计环境与工具 程序设计方法是指在应用领域知识的基础上 遵循明确的步骤 运用适当的思维方式构造出实体 设计相应的数据结构或算法 其大致上可以分为两类 自顶向下和自底向上的构造方法 其实大多数的程序设计方法是这两种方式的结合 程序 算法 实体 程序设计 早期的程序设计 FORTRAN BASIC COBOL等 无特定程序设计方法时期 个人炫技 不利于团队合作 结构化程序设计 自顶向下 逐步求精 采用单入口 单输出的控制结构 Pascal C Ado等程序设计语言 一个以结构化程序设计方法为指导的程序最终是由若干过程组成的 每一个过程完成一个明确的功能 而这些过程只是面向操作或属性中的一方具有局限性 面向对象的程序设计 以类作为构造程序的基本单位 具有封装 数据抽象 继承 多态化等特点 C Simula Java C 等程序设计语言 程序围绕数据进行设计 将数据和操作作为同等重要的实体 程序设计方法的历史演变 对象 属性 对属性进行的操作 面向对象基本思想 从现实世界中客观存在的事物出发来构造软件系统 并在系统的构造中尽可能运用人类的自然思维方式 面向对象更加强调运用人类在日常的思维逻辑中经常采用的思想方法和原则 如抽象 分类 继承 聚合 多态等 面向对象 面向过程编程中数据与程序分离 数据作为静态的资料 其状态不可变 所有的变化有操作来承担 也就是说要改变数据就要调用函数 这就使得函数调用被大量的使用 这无疑是软件性能的硬伤 面向过程也就是传统范型的问题 无法应付规模逐渐增大的软件产品 无法满足用户对软件交付后维护的期望 面向对象的软件开发将世界上的事物均看成对象 而对象的两个特征为 行为 操作 与状态 属性 每个对象可以通过自身的行为来改变自己的状态 其讲求的是对象间的协作与交互 因为对象的操作封闭在对象之内 所以外部要与对象进行交互的话只能通过向对象发送 消息 这就使得对象对外是透明的 面向对象与面向过程的区别以及优势 面向对象范型的优势 面向对象范型支持信息隐藏 这是一个保证实现细节局部于一个对象的机制 除了维护之外 面向对象范型使得软件开发变得更加容易 有着良好设计的对象是一个独立的单元 面向对象范型降低了软件产品的复杂度 从而简化了开发和维护过程 面向对象范型提倡重用 因为对象是独立实体 可用于未来的产品 面向对象与面向过程的区别以及优势 面向对象程序设计的特点 封装性 类 数据 属性 静态 对该数据的操作 方法 动态 对象是类的实例 封装使得类具有独立性和完整性 继承性 类 子类以及对象之间自动共享属性和方法的机制 其优点是 重复使用 接口一致 反射 多态性 表示特定功能时 有多种不同的形态或实现方法 常见的多态形式 方法的重载 方法的覆盖 抽象性 类的层次设计 高层类是底层类的抽象表述 类与对象的关系 类是一个抽象概念 而对象是具体的 面向对象程序设计的特点 面向对象的程序结构 18 对象和类 对象是用计算机语言对问题域中事物的描述 通过 属性 attribute 和 方法 method 来分别对应事物所具有的静态属性和动态属性 对象是问题域中符合某一概念特征的具体的事物 类是用于描述同一类型的对象的一个抽象的概念 类中定义了这一类对象所应具有的静态和动态属性 类是问题域中客观事物的抽象或概念化 19 对象和类 类是抽象的 对象是具体的 类可以看成一类对象的模板 对象可以看成该类的一个具体实例 职员1 n 抽象 实例化 20 属性 事物的特性在类中表示为变量每个对象的每个属性都拥有其特有的值属性名称由类的所有实例共享 年龄 姓名 属性 工资 在类中表示对象或实体拥有的特性时称为属性 21 方法 对象执行的操作称为方法 面向对象一个主要的思维 合适的方法要出现在合适的类中 22 类和对象的区别 类是概念模型 定义对象的所有特性和所需的操作 对象是真实的模型 类定义实体 对象是实际的实体 23 类 对象 之间的关系 关联关系类之间最弱的关系 一个类中的方法使用了另一个类中的对象即构成了关联关系 24 类 对象 之间的关系 继承关系 一般和特殊继承内涵了 是一种 的关系 继承可以构建成一种层次关系的继承树 25 类 对象 之间的关系 实现继承关系 接口 26 类 对象 之间的关系 多态 27 类 对象 之间的关系 聚合关系 整体和部分 聚集 空菱形 和组合 实体菱形 聚集 组合 对象的示例 收银员对象 顾客对象 顾客姓名 朱丽叶年龄 28体重 52千克操作 购买商品 状态 姓名 布兰尼职衔 收银员年龄 35体重 60千克操作 收款打印帐单 行为 消息传递 消息指一个对象为执行某项特定操作而向另一个对象发送的请求 消息 接收消息的对象 执行的方法 参数 请求的服务 30 封装 信息隐藏 隐藏对象的实现细节 不让用户看到将东西包装在一起 然后以新的完整形式呈现出来例如 两种或多种化学药品组成一个胶囊将方法和属性一起包装到一个单元中 单元以类的形式实现信息隐蔽 尽可能隐蔽对象的内部细节 只保留有限的接口使之与外部发生联系 隐藏属性 方法或实现细节的过程称为封装 31 封装的示例 接口 采购经理 罗杰斯先生 法拉力公司 迪斯尼汽车公司 市场经理 雪莉女士 要求 32 封装的示例 有选择地提供数据 法拉力公司 迪斯尼汽车公司 33 封装的示例 实体法拉力公司 实体迪斯尼汽车公司 AutiLtd ButoLtd 34 抽象 处理事物复杂性的方法 只关注事物的重要细节 而忽略事物的次要细节 35 数据抽象 抽取出关键数据抽取出属性和方法 根据具体的应用抽取出类的相关关属性和操作 实施原则 先考虑问题域中有哪些对象和类 然后分析各自的属性和方法 再考虑类和类 对象和对象之间的关系 学习了面向对象程序设计的相关概念 理解了面向对象的主要编程思想 掌握了对象和类的概念理解了抽象和封装理解了类之间的关系理解了对象与类之间的关系 本章总结
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!