1.1面向对象思想引出 1.1.1OO思想引出 在日常生活中,我们经常对事物进行分类,比如常见的分类方法:12星座,图书馆中不同类型的书籍放在不同的楼层中。那我们能不能将这种分类的思想引入到计算机程序设计呢? 这种思想就是OO思想 1.1.2面向对象设计意义
根据用户需求直接映射到程序解决方案中将生活中的习惯的思维引入到程序设计中以模块为中心形成可复用的软件系统(每个小的模块都是一个类别)提供代码的可维护性和可扩展性1.1.3 面向对象中的基本概念
类: 一个抽象的概念,是一类事物对象: 对象属于某个类的具体实体类是一种模型,可以创建出不同的对象实体 ,类类似于int ,char ,double等类型,用类定义对象对象实体是类的一个具体实例类不一定有对应的实体,比如恐龙这个类,就没有实体1.2 类和对象 1.2.1 类和对象的意义
类用于抽象的描述一类事物所特有的属性和行为 (1)如: 电脑有CPU,内存,并且可以开机和运行程序对象是具体的事物,拥有所属类的一切属性和行为 (2)如每个老虎都有不同的体重,不同的性情1.2.2生活中的类 1.2.3 一些有趣的问题
类一定存在实际的对象吗? 不一定,比如恐龙类的对象数目是确定的吗? 不一定 ,比如老虎对象的数目是有限的,但是是不确定的类一定都来源于现实生活吗?不一定,为了更好的完成开发,需要一些辅助类,这些辅助类可能是我们自己想象的。类都是独立的吗?类之间存在关系吗? 不是,比如电脑和CPU的关系,所以类不是独立的,是有关系的。对象实例一定只属于一个类吗? 不一定对象实例可能完全相同吗? 不可能,正如世界上没有完全相同的两片叶子, 对象实例也是不可能完全相同的1.2.4 思想转化
我们需要从面向过程的思想转化成面向对象编程的思想,避免用面向对象的语言写出面向过程的代码1.2.5 生活中的类和对象
寻找生活中的例子 思考类之间存在哪些关系 继承(老虎和华南虎),组合(电脑和CPU)思考对象之间如何协同工作1.3类之间的基本关系 1.3.1 继承
从已存在类细分出来的类和原来的类之间具有继承关系(is a)继承的类(子类)拥有原类(父类)的所有属性和行为1.3.2组合
一些类的存在必须依赖于其他的类,这种关系叫组合组合的类在摸一个局部上由其他的类组成(电脑由CPU,主板,内存等组成)1.3.3继承举例
1.3.4组合举例
1.4 类的表示法演化过程 1.4.1 1.4.2简化 1.4.3改进1 1.4.4改进2
1.4.5改进3 1.4.6改进 参考一 :狄泰软件学院C++进阶剖析 参考一 : 狄泰软件课程
如有侵权:请联系邮箱 1986005934@qq.com