C++——封装

C++——封装,第1张

1、类的定义

以定义一个人类来举例:

//类的定义
/*
* 语法:class 类名 { 访问权限 : 属性 行为 }
* 类中属性和行为统一称为成员
* 属性又称成员属性和成员变量
* 行为又称成员函数和成员方法
*/

//人类
class Person
{
public:   //外部接口
	//给Person属性进行赋值
	void setPerson(string name, int age)   //行为 成员函数
	{
		//这里的this->name表示的是调用的时候调用对象的name属性,并不是函数参数
		//防止name=name编译器会认为第一个name是参数
		//若不用this,则在给参数和成员变量取名字的时候,起一个不一样的名字
		this->name = name;
		this->age = age;
	}
	//展示Person的信息    
    void showPerson()   //行为  成员函数
	{
		cout << "姓名:" << this->name << "  年龄:" << this->age << endl;
	}

private:   //私有权限 
	string name;//姓名
	int age;//年龄
};
2、访问权限

访问权限有三种:公共权限(public)、保护权限(protected)、私有权限(private)

1)公共权限定义的成员是类的外部接口。公共权限的成员在类内可以访问,在类外也可以的访问。

2)私有权限定义的成员只能被本类的成员函数访问,类外的任何访问都是非法的。在上面的例子当中,人类的name和age都是私有类型。

3)保护权限定义的成员的性质和私有成员是相似的,同是本类内可以访问,类外不可以访问。两者的差别在于继承过程中。

另外,类中成员的默认权限是私有的。

3、对象

类是一种抽象的机制,描述了事物的行为和属性。类的对象就是该类的一种实体。例如,对于人类,每一个人就是人类的一个特定的实例,即对象。

声明一个对象和声明一个变量相同: 类名  对象名;

    //声明一个Person类对象
	//类名 对象名
	Person p;

创建好对象,就可以通过对象来访问对象的成员,通过 *** 作符“.”来访问:

    //通过对象来访问成员
	//对象.成员名
	p.setPerson("张三", 20);
	p.showPerson();
4、类的成员函数

成员函数的声明是在类内完成,而成员函数的实现是在类外实现的,在类外实现需要给成员函数加上作用域,即说明这个成员函数是该类的。例如:

//成员函数的类外实现
/*
* 语法   返回值类型 类名::函数成员名(参数表)
*        {
*             函数体;
*        }
*/
//给Person属性进行赋值
void Person::setPerson(string name, int age)
{
	this->name = name;
	this->age = age;
}
//展示Person的信息    
void Person::showPerson()
{
	cout << "姓名:" << this->name << "  年龄:" << this->age << endl;
}

封装就是将抽象的属性和行为结合,形成一个整体,形成一个类。通过上面的例子可以看出来:通过封装是一部分的成员充当类的外部接口,将其他的成员给隐藏起来,这样就达到了对成员的合理控制,使类和类之间的相互影响降低,增进了数据的安全性和程序的编写工作。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/707223.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-24
下一篇 2022-04-24

发表评论

登录后才能评论

评论列表(0条)

保存