3.1—3.2 类与对象
1、现实中的类与对象
现实中的任何实体都是对象。任何实体都归属于某类事物。
类是对具有共同属性特征和行为特征的一些对象进行综合抽象而形成的概念。
2、C++中的类与对象
类是对具有共同属性(数据类)和共同函数(方法)的一些对象的抽象描述和说明。
矩形具有宽、高、面积,这是它的属性(数据类),面积都是=宽×高算出的,这个计
算函数就是类的共同方法。矩形是类。
一个具体的矩形,如:宽 3cm 高 4cm 的 A 矩形,宽 5cm 高 3cm 的 B 矩形,A 矩形、B
矩形都是矩形类的对象。
C++ 中,类是给编译程序提供说明的,是生成对象的模板 。对象是依照类的描述,生成
的具有个性数据的实例。类不存在于运行的代码中,不占内存。对象才占据内存,存在于
运行时的内存中。对象可以执行它的类中的计算方法(函数)来处理自己。
C++中的类,类似于 C 中的结构类型。C++中的对象类似于 C 中的结构类型变量。区别在
于 C++中的类的数据绑定了处理它的函数而已。
下面举一个程序例,从中来看 C++是如何描述的。
#include <iostream>
using namespace std;
class jx //
声明矩形类
jx
{
private: //
私有部分。数据成员,外部不可访
(
封装与隐藏
)
int x,y; //
矩形宽、高
int s; //
矩形面积
public: //
公共部分。公共成员函数,是对象与外部的接口。外部可访
jx(int a,int b)//
构造函数,必须与类同名。无返回值,
void
也不许写
{ //
建立对象自动执行
x=a;
y=b;
}
void mj() //
内部定义的函数是内联成员函数,函数
mj
计算面积
{ //
内联成员函数被译成在调用处,插入函数代码。而不是转移调用
s=x*y;
}
void sc()//
内部定义的函数是内联成员函数,函数
sc
面积输出
{ //
内联成员函数被译成在调用处,插入函数代码。而不是转移调
cout<<"
宽
"<<x<<"
高
"<<y<<"
面积
"<<s<<endl;
}
};
void main()
{
jx a(3,4); //
定义
jx
对象
a
,实参是传给构造函数的
a.mj(); //
对象
a
执行类中
mj
函数(方法)
a.sc(); //
对象
a
执行类中
sc
函数(方法)
jx b(5,3); //
定义
jx
对象
b
b.mj(); //
对象
b
执行
mj
函数(方法)
b.sc(); //
对象
b
执行
sc
函数(方法)
}
评论0
最新资源