在面向对象思维下求解问题的第一步是思考:解决问题需要什么样的对象,然后利用class语法建立关于所需对象的约定。C++语言通过“类”(class)来建立关于对象的约定。
类和对象
例如,我们想要吃到“番茄炒鸡蛋”就需要一种类型的对象“厨师”,这种对象具有自身的属性和行为特征。
厨师 {
属性特征:姓名、厨艺等级、电话;
行为特征:做饭;
};
“厨师”是一个类,约定和描述了这一类人共有的属性和行为特征,这种类型的对象可以解决我们的问题:制作“番茄炒鸡蛋”。
根据这一类人的属性和行为约定,我们可以找到一个满足这些约定的“厨师”实例,例如隔壁村的石大叔,厨艺高超,擅做番茄炒鸡蛋,石大叔就是符合约定的一个厨师“对象”。
石大叔是一个“厨师”对象
(1)属性特征:
姓名:石大叔
厨艺等级:一级
电话:13695134488
(2)行为特征:
做饭
“类”和“对象”的关系:
(1)类是关于一类对象的约定,是对象属性和行为特征的抽象;
(2)对象是符合类的约定的实例。
类只是一种约定,描述了这一类对象应该具有的属性和行为特征,而对象是根据类产生的实例,才是具体的存在,只有对象的属性才具有确切的取值。
例如,“人”类具有姓名、性别等属性,但是,这里的姓名和性别不是某个人的姓名,而是“人”类所有的对象都具有的属性,因此,没有特定的取值;但是,根据“人”类产生的对象,则在这些属性上拥有具体的取值,如“张力”、男等。

