抽象:对同一类对象的共同属性和行为进行概括,形成类:
-
首先注意问题的本质及描述,其次是实现过程或细节。
-
数据抽象:描述某类对象的属性或状态(对象相互区别的物理量)
-
代码抽象:描述某类对象的共有的行为特征或具有的功能。
-
抽象的实现:类。
抽象实例-钟表
数据抽象: int hour,int minute ,int second
代码抽象:setTime(),showTime()
class Clock{
public:
void setTime(int newH,int newM,int newS);
void shwTime();
private:
int hour,minute,second;
};
封装:将抽象出的数据、代码封装在一起,形成类。
-
目的:增强安全性和简化编程,使用者不必了解具体的实现细节,而只需要通过外部接口,以特定的访问权限,来使用类的成员。
-
实现封装:类声明中的{}
-
继承:宰一友类的基础上,进行扩展形成新的类(具体后期继续学习)。
多态:同一名称,不同的功能实现方式。
目的:达到行为标识统一,减少程序中标识符的个数。
类定义的语法形式
class 类名称
{
public:
公有成员(外部接口)
private:
私有成员
protected:
保护型成员
};
-
公有类型成员:在关键词public后面声明,他们是类与外部的接口,任何外部函数都可以访问公有类型数据和函数。
-
私有类型成员:在关键词private后面声明,只允许本类中的函数访问,而类外部的任何函数都不能访问;如果紧跟在类名称的后面声明私有成员,则关键词private可以省略。
对象定义的语法
-
类名 对象名:例,Clock myClock
-
类的成员函数
-
在类中声明函数原型;
-
可以在类外给出函数体实现,并在函数名前使用类名加以限定;
-
也可以直接在类中给出函数体,形成内联成员函数;
-
允许声明重载函数和带默认参数值的函数。
构造函数的作用
在对象被创建时使用特定的值构造对象,将对象初始化为一个特定的初始状态。