C++面向物件三大特性之一封裝
阿新 • • 發佈:2021-02-17
封裝是C++面向物件三大特性之一
封裝的意義:
1.將屬性和行為作為一個整體,表現生活的事物。
2.將屬性和行為加以許可權控制
封裝意義一:
在設計類的時候,屬性和行為寫在一起,表現事物
語法:
class 類名{ 訪問許可權:屬性/行為};
案例:設計一個圓類,求圓的周長
示例程式碼:
#include <iostream>
using namespace std;
//圓周率
const double PI = 3.14;
//設計一個圓類,求圓的周長
//圓求周長的公式:2*PI*半徑
//class 代表設計一個類,類後面緊跟著的就是類名稱
class Circle
{
//訪問許可權
//公共許可權
public:
//屬性
//半徑
int m_r;
//行為
//獲取圓的周長
double calculateZC()
{
return 2 * PI*m_r;
}
};
int main()
{
//通過圓類,建立具體的圓(物件)
//例項化 (通過一個類建立一個物件的過程)
Circle c1;
//給圓物件 的屬性進行賦值
c1.m_r = 10;
//2*PI*10=62.8
cout << "圓的周長為:" << c1.calculateZC() << endl;
system("pause");
return 0;
}
封裝意義二:
類在設計時,可以把屬性和行為放在不同的許可權下,加以控制
訪問許可權有三種:
1. public 公共許可權
2. protected 保護許可權
3. private 私有許可權
程式碼示例:
#include <iostream>
#include <string>
using namespace std;
//訪問許可權
//三種
//1. public 公共許可權 成員 類內可以訪問 類外可以訪問
//2.protected 保護許可權 成員 類內可以訪問 類外不可以訪問 兒子可以訪問父親中的保護內容
//3.private 私有許可權 成員 類內可以訪問 類外不可以訪問 兒子不可以訪問父親中的私有內容
class Person
{
public:
//公共許可權
string m_Name; //姓名
protected:
//保護許可權
string m_Car; //汽車
private:
//私有許可權
int m_Password; //銀行卡密碼
public:
void func()
{
m_Name = "張三";
m_Car = "拖拉機";
m_Password = 123456;
}
};
int main()
{
//例項化具體物件
Person p1;
p1.m_Name = "李四";
//p1.m_Car = "賓士";//保護許可權內容,在類外訪問不到
//p1.m_Password = 123;//私有許可權內容,在類外訪問不到
p1.func();
system("pause");
return 0;
}
本文到此為止。。
更多精彩文章請關注微信公眾號:YQ程式設計,或微信掃描以下二維碼關注,還有許多IT類電子書等你來拿。
您的關注就是我創作的動力