寒假打卡----3
类和对象
- 过程性编程&OOP面向对象编程
过程性编程:例如int main(){
}由上至下。 考虑遵循的步骤,如何表示数据。
OOP:首先考虑数据不仅要考虑如何表示数据,还要考虑如何使用数据。 - 基本数据单元
- 抽象和类:(以小狗作为例子)
抽象:提取主要信息,去除次要不关键信息建立模型
属性:一类事物的特征
方法:一类事物的行为 - 对象:
将“小狗类”看做一个说明书,根据说明书创建出来的具体的小狗,称为对象。
参考博主weixin_34138139:什么是OOP(面向对象编程)?
C++中的类
类规范:
- 类声明:以数据成员的方式描述数据部分,以成员函数的方式(称为方法)描述公有接口。(提供了类的蓝图,这里我理解为框架)
- 类方法定义:描述如何实现类成员函数。
(提供了细节)
接口----共两个系统交互时使用的共享框架
3. 例如,用户可能是您,而程序可能是字处理器。使用字处理器时,您不能直接将脑子中想到的词传输到计算机内存中,而必须同程序提供的接口交互。
用户<---->接口<---->程序
2.公共接口Public:
3. 不要将使用类的程序是为公共用户,而将编写程序的人是为公共用户。然而,要使用某个类配置了解其公共接口;要编写类,必须创建其公共接口。
小结
指定类设计的第一步是提供声明。类声明类似结构声明可以包括数据成员和函数成员。声明有私有部分,其中生命的成员只能通过成员函数进行访问;声明还具有公有部分,在其中生命的成员可以被使用类对象的程序直接访问。通常数据成员对方在私有部分中成员函数被放在公有部分中。因此典型的类声明的格式如下。
class className
{
private:
data members declarations
public:
member function prototypes
};
公有部分的内容构成了设计的抽象部分——公有接口。当数据封装到私有部分中,可以保护数据的完整性,这被称为数据隐藏。因此,C++通过类似的实现抽象,数据,隐藏和封装等OPP特性很容易。
类使用
class Cube{
private:
double l;
double w;
double h;
public:
void sur_s(double l,double w,double h);
void vol(double l,double w,double h);
};
void Cube::sur_s(double l,double w,double h){
using std::cout;
double S = (l*w+l*h+h*w)*2;
cout <<"The surface area of the cube is: "
<<S <<"\n";
}
void Cube::vol(double l,double w,double h){
using std::cout;
double V = h*l*w;
cout <<"The volume of the cube is: "
<<V <<"\n";
}