為什麼乙個類的物件可以做成員變數呢 ?

2021-09-26 08:43:46 字數 445 閱讀 9259

對於物件導向的語言來說,乙個類中能夠使用的資料型別包括任何在本語言中合法的型別。

乙個物件它屬於引用型別資料例項,當然就可以出現在乙個類中作為這個類的成員使用了,可能這個物件不是這個類的特有

特徵,但是它們存在一些必然或者實際行為動作中產生的間接聯絡,乙個物件成為乙個類的成員也就順理成章,這樣符合實際生活

中的諸多現象。

如 列印工作人員要列印檔案,他一定就要使用印表機,印表機雖然不是列印工作人的本身特性,但是行為中要和其

他物件進行互動,所以在程式設計中我們定義的列印工作人類就會包括乙個印表機型別的屬性了。

如果在主類中宣告了乙個其他類的物件。

那麼主類例項化的時候,也同時例項化了那個其他類的物件。

如果這個其他類物件有自己的特殊的建構函式,你主類構造時如果沒有實現那個建構函式。

那麼這個其他類的物件因為缺少建構函式的呼叫是無法例項化的。

為什麼乙個物件可以用父類宣告,卻用子類例項化

這個例項是子類的,但是因為你宣告時是用父類宣告的,所以你用正常的辦法訪問不到子類自己的成員,只能訪問到從父類繼承來的成員。在子類中用override重寫父類中用virtual申明的虛方法時,例項化父類呼叫該方法,執行時呼叫的是子類中重寫的方法 如果子類中用new覆蓋父類中用virtual申明的虛方法...

C 為什麼可以在乙個類裡宣告並例項化自身類的物件

例子1 自身類的物件是靜態字段,該欄位屬於類,而不屬於該類的每個物件。using system namespace newselfclassobject n o atom.c.radius,atom.n.radius,atom.o.radius c 6 引入了字串字首 console.writeli...

乙個類作為另乙個類的資料成員

寫程式的時候希望乙個類能夠訪問另乙個類的資料成員 protected,private 例如類a要訪問類b中的資料成員。1.保持封裝性 可以通過在被訪問的類 b 中定義訪問許可權為public的函式,用來返回資料成員的引用。2.繼承 當乙個派生類從父類繼承時,父類的所有成員就成為子類的成員,因此可以將...