C++面向对象程序设计(第二版)

C++面向对象程序设计(第二版)

【1】第一章

什么是面向对象程序设计?

程序=对象+消息
 (1)程序由类的定义类的使用两部分组成
 (2)程序中的一切操作都是通过向对象发送消息来实现的,对象接收到消息后,启动有关方法完成相应的操作

在面向对象程序设计中,什么是对象?什么是类?对象与类的关系是什么? (3)现实世界中的对象有哪些特征?

对象=(描述对象属性的)数据+(操作对象的)方法
类 = 一组具有相同属性和行为的对象的抽象,具有相同的数据和操作的一组对象的集合
类是创建对象的模板,它包含对创建对象的状态描述

现实世界中的对象:

  • 每一个对象必须有一个名字以区别于其他对象
  • 用属性来描述它的某些特征
  • 有一组操作,每个操作决定对象的一种行为(操作包括:自身所承受的操作和施加于其他对象的操作)
什么是消息,消息具有什么性质?

消息传递:允许一个对象与另一个对象进行交互的一种程序设计机制
 当对象接收到发向它的消息时,就调用有关的方法,执行相应的操作

  • 同一个对象可以接收不同形式的多个消息,做出不同的响应
  • 同一个消息传递给不同对象,所做出的响应可以是不同的
  • 对象可以不响应消息
什么是方法?在C++中它是通过什么来实现的?

对象所执行的行为/操作,通过调用相应的函数实现
 C++中方法是通过成员函数实现的

什么是抽象和封装?

抽象=数据抽象+行为抽象
 数据抽象描述某类对象的属性和状态(特征物理量)(数据成员);行为抽象描述某类对象的共同行为特征(成员函数)

以学生管理系统为例:

  • 共同的属性:学号、姓名、成绩 (数据抽象部分)
  • 共同的行为:成绩录入、成绩排名 (行为抽象)

封装结构体升华到的层次
 将有关的数据操作代码封装在一个对象中,各个对象相对独立、互不干扰
 将对象中某些数据与操作代码对外隐蔽只留有少量接口,以便与外界联系,接收外界的消息

什么是继承?请举例说明。

 继承所表达的是对象类之间的关系,这种关系使得某一类可以继承另外一个类的特征和能力
     在这里插入图片描述

若类之间具有继承关系,那它们之间具有什么特征?

 类间具有共享特征
 类间具有差别新增部分(包括数据操作代码的共享)
 类间具有层次结构

什么是单继承?多继承?请举例说明?

单继承:每个派生类只直接继承了一个基类的特征 (上面例子)
多继承:多继承是指多个基类派生出一个派生类的继承关系
   在这里插入图片描述

什么是多态性?请举例说明。

 不同对象收到相同消息时产生多种不同的行为方式

  • 编译时多态:函数重载+运算符重载
  • 运行时多态:虚函数
传统程序设计方法的局限性主要有哪些?
  • 效率低
  • 难以处理日益庞大的信息量和多样的信息类型
  • 难以适应各种新环境
面向对象程序设计的优点主要有哪些?
  • 提高代码的重用性
  • 改善代码的可维护性

【2】第二章

待整理

【3】第三章
待整理

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值