封裝是c++物件導向三大特性之一
1.封裝的意義
封裝的意義:
(1)將屬性和行為作為乙個整體,表現生活中的事物
(2)將屬性和行為加以許可權控制
封裝意義一:
在設計類的時候,屬性和行為寫在一起,表現事物
語法:class 類名;
示例1:設計乙個圓類,求圓的周長
示例**:
1 #include2using
namespace
std;3//
圓周率4
const
double pi = 3.14;5
6//1、封裝的意義7//
將屬性和行為作為乙個整體,用來表現生活中的事物89
//封裝乙個圓類,求圓的周長
10//
class代表設計乙個類,後面跟著的是類名
11class
circle
1226
};27
28int
main()
29
示例2:設計乙個學生類,屬性有姓名和學號,可以給姓名和學號賦值,可以顯示學生的姓名和學號
示例**:
1 #include2using
namespace
std;3//
學生類4
class
student511
void setid(int
id)
1215
16void
showstudent()
1720
public:21
string
m_name;
22int
m_id;
23};
2425
intmain()
26
封裝意義二:
類在設計時,可以把屬性和行為放在不同的許可權下,加以控制
訪問許可權有三種:
(1). public 公共許可權
(2). protected 保護許可權
(3). private 私有許可權
示例**:
1 #include2using
namespace
std;3//
三種許可權4//
公共許可權 public 類內可以訪問 類外可以訪問5//
保護許可權 protected 類內可以訪問 類外不可以訪問6//
私有許可權 private 類內可以訪問 類外不可以訪問78
class
person929
};30
31int
main()
32
2.struct和class區別
在c++中 struct和class唯一的區別就在於預設的訪問許可權不同
區別:struct 預設許可權為公共
class 預設許可權為私有
示例**:
1 #include2using
namespace
std;
3classc14
;78structc29
;1213int
main()
14
3.成員屬性設定為私有
優點1:將所有成員屬性設定為私有,可以自己控制讀寫許可權
優點2:對於寫許可權,我們可以檢測資料的有效性
示例**:
1 #include2using
namespace
std;
3class
person 412
string
getname()
1316
1718
//獲取年齡
19int
getage()
2023
//設定年齡
24void setage(int
age)
2531 m_age =age;32}
3334
//情人設定為只寫
35void setlover(string
lover)
3639
40private:41
string m_name; //
可讀可寫 姓名
4243
int m_age; //
唯讀 年齡
4445
string m_lover; //
只寫 情人
46};
4748
49int
main()
50
C 物件導向封裝
一 什麼叫做物件導向封裝?封裝的概念 隱藏物件的屬性和實現細節,僅對外公開介面,控制在程式中屬性的讀取和修改的訪問級別。二 物件導向封裝有什麼好處 為什麼要封裝 封裝的目的 是增強安全性和簡化程式設計,使用者不必了解具體的實現細節,而只是要通過外部介面,以特定的訪問許可權來使用類的成員。三 如何使用...
c 基礎知識 封裝 物件導向
繼承public private和protected跟c 一樣,internal表示同乙個程式集的物件可以訪問 protected internal表示當前程式集 本類和派生類中可以訪問。比如成員變數宣告為 using system namespace declaration.可能不止乙個 name...
基礎 C 的類與物件 封裝
c 物件導向的三大特性為 封裝 繼承 多型 c 認為萬事萬物都皆為物件,物件上有其屬性和行為 例如 人可以作為物件,屬性有姓名 年齡 身高 體重 行為有走 跑 跳 吃飯 唱歌 車也可以作為物件,屬性有輪胎 方向盤 車燈 行為有載人 放 放空調 具有相同性質的物件,我們可以抽象稱為類,人屬於人類,車屬...