1.1、
根據物件導向的理論:
子類擁有父類的一切屬性和行為
,子類能夠直接訪問父類的私有成員!
1.2、
但c++語法規定,外界
不能直接訪問類的private
成員,所以
子類也不能直接訪問父類的私有成員!
2.1、
物件導向中的訪問級別不只是public和private
2.2、
可以定義protected訪問級別
2.3、
關鍵字protected
的意義2.3.1、
修飾的成員
不能被外界直接訪問
2.3.2、
修飾的成員
可以被子類直接訪問
為什麼物件導向中需要protected關鍵字???
定義類時訪問級別的選擇::
組合和繼承的綜合例項:
/*********************** 組合和繼承的綜合例項 ***********/
#include
#include
#include
using namespace std;
//ostringstream 將數字轉換為字串
class object
string name()
string info()
};class point : public object
int x()
int y()
};
class line : public object
point begin()
point end()
};int main()
3.1、
物件導向中的訪問級別不只有public和private
3.2、
protected
修飾的成員
不能被外界所訪問
3.3、
protected
使得子類能夠訪問父類的成員
3.4、
protected關鍵字是為了繼承而專門設計的
3.5、
沒有protected就無法完成真正意義上的**復用
第44課 繼承中的訪問級別
子類是否可以直接訪問父類的私有成員?編譯出錯,那如何訪問父類中的非公有成員呢?物件導向中的訪問級別不只是public和private 可以定義protected訪問級別 關鍵字protected的意義 修飾的成員不能被外界直接訪問 修飾的成員可以被子類直接訪問 includeusing namesp...
44 繼承中的訪問級別
外類不能直接訪問類的 private成員 子類不能直接訪問父類的私有成員 include include using namespace std class parent int value class child public parent int main int value class chi...
繼承中的訪問級別
繼承的概念之前的文章已經提及了,那麼子類是否可以直接訪問父類的私有成員呢,答案是否定的 例子 include include using namespace std class parent intvalue class child public parent int main 結果 a.cpp 在...