C++图文并茂轻松进阶面向对象
短信预约 -IT技能 免费直播动态提醒
一、进阶面向对象(上)
面向对象的意义在于
- 将日常生活中习惯的思维方式引入程序设计中
- 将需求中的概念直观的映射到解决方案中
- 以模块为中心构建可复用的软件系统
- 提高软件产品的可维护性和可扩展性
类和对象是面向对象中的两个基本概念
- 类∶指的是一类事物,是一个抽象的概念
- 对象∶指的是属于某个类的具体实体
- 类是一种模型,这种模型可以创建出不同的对象实体
- 对象实体是类模型的一个具体实例
注:一个类可以有很多对象,而一个对象必然属于某个类。
生活中的类和对象
类和对象的意义
类用于抽象的描述一类事物所特有的属性和行为
- 如:电脑拥有CPU,内存和硬盘,并且可以开机和运行程序
对象是具体的事物,拥有所属类中描述的一切属性和行为
- 如:每一只老虎都有不同的体重,不同食量以及不同的性情
二、小结(上)
- 面向对象是当今软件开发中的重要方法
- 类和对象是面向对象理论中的基本概念
- 类和对象均来源于日常生活中
- 每个类可以有多个对象
- 每个对象必然属于某个类
三、进阶面向对象(下)
类之间的基本关系
继承
- 从已存在类细分出来的类和原类之间具有继承关系( is-a )
- 继承的类(子类)拥有原类(父类)的所有属性和行为
组合
- 一些类的存在必须依赖于其它的类,这种关系叫组合
- 组合的类在某一个局部上由其它的类组成
类之间的基本关系 -- 继承
惠普电脑和苹果电脑都继承于电脑,具备电脑的所有特征。
类之间的基本关系 -- 组合
类的表示法
类的表示法 -- 简化
类的表示法 -- 改进1
类的表示法 -- 改进2
类的表示法 -- 改进3
这有点代码的味道了,那么如何用程序设计中的概念描述类的属性和行为?下面做最终改进。
类的表示法 -- 改进4
下面把上面表示方法写成代码,看看编译器会不会报错吧。
#include <stdio.h>
struct Biology {
bool living;
};
struct Animal : Biology {
bool movable;
void findFood() { }
};
struct Plant : Biology {
bool growable;
};
struct Beast : Animal {
void sleep() { }
};
struct Human : Animal {
void sleep() { }
void work() { }
};
int main()
{
return 0;
}
下面为输出结果:
可以看到,编译器并没有报错,也就证明面向对象那种表示方法是可以的。
四、小结(下)
- 类之间可以存在继承关系或组合关系
- 继承关系中子类拥有父类的一切属性和行为
- 组合关系是类之间整体和部分的关系
- 类及类之间的关系可以有不同的表示法
- 编译器对类的表示法有具体的要求
到此这篇关于C++图文并茂轻松进阶面向对象的文章就介绍到这了,更多相关C++面向对象内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341