面向对象系列
- 什么是实体?
- 指客观世界存在的某个事物
- 如何描述实体?
- 通过对实体进行抽象,来描述实体
- 如何抽象描述实体
- 每个实体都有其特征和功能,特征和功能通称为属性
- 实体与实体的不同在于属性的不同
- 所谓抽象描述实体是指:
- 从实体中抽取出若干特征和功能,来表示实体
- 特征指实体的静态属性,功能指实体的动态属性
- 对实体加以抽象要注意下面两点:
- 移出细节看主干
- 不是借助具体形象反映现实,而是以抽象表达科学的真实
抽象描述实体的结构不唯一
- 实体的抽象描述因人而异
- 有些人抽象描述地较为完善、详细
- 有些人抽象描述地较为简单、粗糙
- 无论怎样抽象描述实体,都要尽可能抽象分析出主要特征与功能
- 特征和功能密切相关、相互依赖,不能割裂
- 当然有些实体只有静态属性而无动态属性,如兵马俑等
- 实体的抽象描述因人而异
什么是对象?
- 对象指被抽象描述的某个实体
- 一个对象包含了实体的特征和功能
- 对象=实体的特征+实体的功能
- 对象=数据+函数
- 将数据和函数当作一个统一体
什么是类?
- 类:具有相同特征和功能的对象集合
- 对象是类的一个实例或个体或元素
将实体转化为程序中的数据(类型)
- C++程序中有四种基本数据类型:字符、整数、浮点、双精度类型
- 当程序中涉及到的实体不能直接描述为基本数据类型时,只有描述成新的数据(类型)
- 类是相同属性的对象集合,其中某个对象的特征和功能就是类的特征和功能
类与结构体
- 将数据和函数当作一个统一体——类
- 类是对客观世界万物的抽象描述
- 结构体是复合数据的统一体
- 结构体与类的区别?
- 结构体只有数据成员,没有函数成员
- 结构体又称为特殊的类
- 现在结构体中也可以包括函数成员
- 类的语法格式与结构体相似
结构体的定义、声明、引用
先定义结构体,例如日期结构体定义如下:
struct date { int year,month,day; }
再声明结构体变量(对象):
date mybirthday;
然后引用结构体变量(对象):
mybirthday.year=1989; mybirthday.month=10; mybirthday.day=18;
类与结构体语法格式相似
- 类的语法格式:
- 先定义类的数据成员和函数成员
- 再声明具体对象(变量)
- 然后使用对象(变量)
- 类的语法格式: