1、第五章面向对象技术基础,5.1 面向对象技术(OOP)的形成与发展5.2 面向对象的基本概念和特征5.3 面向对象程序设计方法5.4 面向对象程序设计语言,5.1 面向对象技术的形成与发展,问题解决:用计算机的逻辑语言(支持OOP)来表示客观世界中的具体事物、对象。即:使程序员分析、设计和实现系统的方法和人认知客观世界的过程相一致。,5.2 面向对象的基本概念和特征,5.2.1 OOP的基本概念,5.2.2 OOP的基本特征,基本概念:类、对象、消息,基本概念:封装、继承、多态,5.2.1 对象,概念对象:现实生活中某一事物在计算机逻辑中的抽象表示 从其组成来解释,一个对象有:成员变量成员方法
2、思想将客观事物抽象为对象,对象具有自己的状态和行为,通过消息来完成特定的任务特点对象实现了数据和操作的结合 必须实现一个或一个以上的类,成为类的实例,5.2.2 类,构成消息的三个要素:接受消息的对象、响应消息的处理方法、方法所需要的参数 。,5.2.3 消息,5.2 面向对象的基本特征,JAVA是一种很好的面向对象编程语言 ,它支持:封装性、继承性、多态性。封装性基本思想:把客观世界中联系紧密的元素及其相关操作组织在一起,使其相互作用隐藏、封装在内部,而对外部对象只提供单一的功能接口。 目的:将对象的使用者和设计者分开。 类比:汽车的左转、右转;被陶瓷封装的集成芯片,继承性继承是OOP中一种
3、由已有的类创建新类的机制。,位于上方的称为父类,位于下方的成为子类 一个父类(公共属性的集合)可以有多个子类(是父类的特殊化), 一个子类只可以有一个父类 子类可以直接使用父类的方法,也可以根据需要修改父类中已经定义的方 法(即不改变方法名,而修改方法的参数个数、参数类型)。父类和子类 可有同名的方法(多态性)。,多态性,定义:由于父类和子类可以有同名的方法,在运行时JVM根据方法的参数个数和类型的不同来查找、决定执行哪个版本的方法,称为多态性。 在程序执行时,JVM对对象某一方法的查找是从该对象类所在层次开始,沿类等级逐级向上进行,把第一个方法作为所要执行的方法。所以,子类的方法可以屏蔽父类的方法。,5.2 面向对象的程序设计方法,OOP出现的背景:,OOP的三个步骤:,OOD:面向对象的设计 任务:在OOA的基础上将详细设计抽象出来的对象以及这些对象间的关系、对象间 如何通信。,OOA:面向对象的分析 任务:了解要解决的问题所涉及的对象、对象间的关系,OOI:面向对象的实现 任务:使用具体的OOP语言,编码OOD阶段的设计。,5.2 面向对象的程序设计语言,SmalltarkC+3. JAVA,