2010-08-10 75 views
0

我有兩個類,在classA中創建一個變量,我需要在classB中使用 應該使用屬性嗎?通過屬性訪問另一個類的變量

有沒有人可以更容易地解釋我,如何將一個類的變量的StringValue設置爲另一個類的文本字段?

感謝

+2

你見過http://developer.apple.com/mac/library/documentation/Cocoa/Conceptual/ObjectiveC/Articles/ocProperties.html嗎? – Vladimir 2010-08-10 11:37:13

回答

1
+0

斷開鏈接?這現在只提供託管。 – Jimmery 2013-08-08 09:45:10

+0

很抱歉聽到這個消息。隨意搜索網頁,如果你願意,你可以打開鏈接。無論如何,我最初通過web搜索找到它 – 2013-08-09 08:42:57

0

簡單的答案是肯定的,使用特性,那就是他們是什麼:一個對象的狀態暴露在一個簡單的方法其他物體。

較長的答案是:Objective-C 2.0 properties只是圍繞Key-Value-CodingKey-Value-Observing(KVC/KVO)概念的包裝。

非常值得閱讀這些文檔,因爲這個概念對於Cocoa在早期學習過程中的作用和理解方式至關重要,這將在未來爲您節省很多麻煩。

而且,由於您將傳遞對象引用,所以我可能會添加一個指向Memory Management Programming Guide的鏈接,這將幫助您正確地將正確的內存管理屬性應用於您的@property聲明。

+0

屬性只是用於聲明存取方法和(在現代運行時)實例變量中的正式語法。 KVC是一種訪問這種財產的方式,無論它是否正式宣佈。區別在於'foo.bar'直接向'foo'發送'bar'消息,就像'[foo bar]'一樣,而KVC實際上會*尋找像'bar'或'_bar'這樣的方法,並且只發送一條消息(如果它沒有找到方法,它會查看「bar」或「_bar」ivar)。所以,KVC主要坐落在物業之上;屬性不包裝KVC。 – 2010-08-10 12:51:46

+0

我試圖說,屬性簡化創建符合KVC的訪問器,甚至下降到'@synthesize _iVar = iVar;' – Abizern 2010-08-10 13:57:52

+0

有沒有人可以更容易地解釋我如何將一個類的變量的StringValue設置爲另一個類的文本字段? – aden 2010-08-10 16:23:12

相關問題