我正在考慮創建「請求跟蹤器」的OOP模型。當繼承的類都屬於同一個基類時,是否可以繼承另一個繼承類的類「包含」對象?
所以,我認爲執行以下操作:
父類:RequestOrResponse(含有請求和響應的公共字段,諸如ID,日期,所涉及的項目,用戶數量)。
子類:1.請求(具有數據成員:優先級,狀態剩餘量),2.響應(與數據成員relatedRequest)
Response類具有數據成員是請求的對象。
我正在考慮創建「請求跟蹤器」的OOP模型。當繼承的類都屬於同一個基類時,是否可以繼承另一個繼承類的類「包含」對象?
所以,我認爲執行以下操作:
父類:RequestOrResponse(含有請求和響應的公共字段,諸如ID,日期,所涉及的項目,用戶數量)。
子類:1.請求(具有數據成員:優先級,狀態剩餘量),2.響應(與數據成員relatedRequest)
Response類具有數據成員是請求的對象。
是;沒有一般的理由爲什麼這不起作用。
是的,不僅如此。一個對象也可以「包含」它自己類的一個對象。
這是因爲它實際上不是它包含的對象,而是對象的引用,所以它不需要無限的空間。
「一個對象」是否等於「對該對象的引用」實際上取決於編程語言。如果沒有,您可能無法在自己的定義中引用它,因爲它仍然在定義中。例如在C++中,你甚至不能編譯'class A {public:A a; };',因爲'field'a'有不完整的類型'A''。你需要使'a'成爲一個指針。 – Siguza