飨)单乘师学 第九讲 类与对象 (I)面向对象基础
第九讲 类与对象 (I) 面向对象基础
面向对象基础 ■面向对象的基本特点 ■类和对象的基本操作 ■构造函数和析构函数 ■类的组合 ■结构体与联合体 ■类的UML描述
2 面向对象基础 ◼ 面向对象的基本特点 ◼ 类和对象的基本操作 ◼ 构造函数和析构函数 ◼ 类的组合 ◼ 结构体与联合体 ◼ 类的 UML 描述
高级语言发展 ●第一代:对数学表达式有很强的运算处理能力 代表有 Fortran, Algol60 ●第二代:重点是如何有效地表达算法 代表有 Pascal,C ●第三代:引入抽象数据类型的程序设计语言 代表有Ada ●第四代:面向对象程序设计语言 代表有 Simula67, Smalltalk80、C++、Java
3 高级语言发展 ⚫ 第一代:对数学表达式有很强的运算处理能力 代表有 Fortran,Algol 60 ⚫ 第二代:重点是如何有效地表达算法 代表有 Pascal,C ⚫ 第三代:引入抽象数据类型的程序设计语言 代表有Ada ⚫ 第四代:面向对象程序设计语言 代表有 Simula67,Smalltalk80、C++、Java
为什么面向对象 ●出发点:更直观地描述客观世界中存在的事物(对象) 以及它们之间的关系 ●目的:通过提高代码的可重用性,降低软件的开发成本和 维护成本,从而大大提高程序员的生产力 ●面向对象基本特点 ●是高级语言 ●将客观事物看作具有属性(数据)和行为(函数)的对象 ●通过抽象找出同一类对象的共同属性和行为,形成类 ●通过类的继承与多态实现代码重用 ●面向对象的几个主要特征:抽象、封装、继承和多态
4 为什么面向对象 ⚫ 出发点:更直观地描述客观世界中存在的事物(对象) 以及它们之间的关系 ⚫ 面向对象基本特点 ⚫ 是高级语言 ⚫ 将客观事物看作具有属性(数据)和行为(函数)的对象 ⚫ 通过抽象找出同一类对象的共同属性和行为,形成类 ⚫ 通过类的继承与多态实现代码重用 ⚫ 目的:通过提高代码的可重用性,降低软件的开发成本和 维护成本,从而大大提高程序员的生产力 ⚫ 面向对象的几个主要特征:抽象、封装、继承和多态
抽象 抽象:对具体问题/事物(对象)进行概括,抽出这一类对象 的公共性质并加以描述的过程。 ●首先关注的是问题的本质及描述,其次是实现过程或细节 ●抽象包括:数据抽象和行为抽象 数据抽象: 描述某类对象的属性或状态(对象相互区别的物理量) 行为抽象(功能抽象、代码抽象): 描述某类对象的共同行为或功能特征 ●抽象的实现:类
5 抽象 抽象:对具体问题/事物(对象)进行概括,抽出这一类对象 的公共性质并加以描述的过程。 ⚫ 首先关注的是问题的本质及描述,其次是实现过程或细节 ⚫ 抽象包括:数据抽象和行为抽象 - 数据抽象: 描述某类对象的属性或状态(对象相互区别的物理量) - 行为抽象(功能抽象、代码抽象): 描述某类对象的共同行为或功能特征 ⚫ 抽象的实现:类