Qt物件導向:什麼是類別?
在物件導向設計中,程式設計者通常使用類別去產生物件,因此類別主要描述你要產生的物件.換句話說,我們像畫設計圖似地去設計具有特定功能的類別,然後在程式像變數去初始化具有類別功能的變數,而此變數即稱為物件.然而請注意你可以產生多個物件,但類別只有唯一一個,就像一個設計圖可以產生許多產品.
圖一描述類別的構成,我們通常在資料成員使用定義符private或protected修飾,一方面是不允許類別以外成員函數去更改資料成員值,而且在衍生類別(derived class)可依據衍生類別需求對資料成員做不同的操作,因此成員函數通常使用定義符public修飾.其實這種受限處理資料成員的方法,我們通常可稱作封裝.
圖一描述類別的構成,我們通常在資料成員使用定義符private或protected修飾,一方面是不允許類別以外成員函數去更改資料成員值,而且在衍生類別(derived class)可依據衍生類別需求對資料成員做不同的操作,因此成員函數通常使用定義符public修飾.其實這種受限處理資料成員的方法,我們通常可稱作封裝.
- 類別的基本定義 [1]
- 資料成員(data member)
- 成員函數(member function)
- 通常用來管理或操作資料的成員
- 處理的定義符( access specifiers)
- public :
- 只要宣告物件,即可以直接存取資料成員
- private:
- 只有類別的成員函數可以處理類別內的資料的成員.
- 衍生類別的成員函數也無權存取類別成員
- protected:
- 無論基底類別或衍生類別,類別的成員函數都可以存取類別成員
圖一.類別的構成(source: IBM developerWorks) |
- Alan Ezust, Paul Ezust, An Introduction to Design Patterns in C++ with Qt 4, Chapter 2
- UML basics: The class diagram, IBM developerWorks [online]:http://www.ibm.com/developerworks/rational/library/content/RationalEdge/sep04/bell/
留言
張貼留言