[英]Accessing Parent Class Properties from Property Objects
假設您具有以下設計:
ClassA
ClassC
ClassB
Property: object of type ClassA
Property: object of type ClassC
如果ClassB
具有類型為ClassA
的對象,那么ClassA
是否可以訪問ClassB
成員? 換句話說,假設有一個ClassA
方法(例如ClassA.GetVegetables()
),但ClassA
方法需要訪問ClassB
類型的ClassC
屬性,這可能嗎?
看起來您正在將2個概念混合在一起:
ClassA是否可以調用ClassB的任何方法取決於ClassA是否引用ClassB(第一個概念)。 例如,可以通過將ClassB的實例傳遞給ClassA的構造函數來實現。
一旦ClassA引用了ClassB的實例,它就只能訪問標記為public
的ClassB的方法。 查找access modifiers
以獲取更多信息。
在沒有看到任何附加代碼的情況下,最好的處理方法是將所需信息作為參數傳遞給GetVegetables
方法。
理想情況下,您應該將所有必需的數據作為參數傳遞,以使方法非常獨立,而不依賴於某些全局狀態。
這是假設當前的設計是最佳的。 可以通過更改設計細節來解決此問題,但是如果看不到更多代碼,我們就無法分辨。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.