iOS 屬性的屬性

2021-06-02 19:50:59 字數 1060 閱讀 6866

賦值:

class.propertya = instancea

retain, assign, copy 只影響 instancea的計數,可能增加,可能不變。到這句執行完畢為止,只要instancea是合法的,propertya就是合法的。

retain, assign, copy: 

誰建立了instancea還是誰負責釋放。但不同的型別,釋放的時間不同。

retain

可以馬上釋放。

assign

在 properya 使用完畢後才可以釋放

copy

可以馬上釋放。

常見的retain賦值:

addsubview, rootviewcontroller, addgesture

常見的assign賦值:(概念上,背後到底有沒有儲存變數無關緊要)

presentmodalviewcontroller; presentpopover 

釋放:

對於retain型別的屬性:

class.propertya = nil; // class.propertya = ***; 

相當於:[propertya release];

而assign型別的屬性(例如一般來說iboutlet )

要釋放必須是:

[propertya release];

而一般不應該釋放,沒有職責釋放assign型別的屬性。但是在viewdidunload裡面有時需要釋放iboutlet來節省空間。

IOS屬性的作用

說明 在學習屬性前先理清屬性跟類和物件的關係。所以先說明一下類和物件。類是抽象概念,用於抽象描述具有相同屬性和行為的某一類物件。比如 人 車等。物件是類的例項化,具體描述這個類別中的乙個實體。類是抽象的,不佔記憶體 物件是具體的,佔記憶體。舉例 人 是乙個類,人的屬性有名字 身高 性別 膚色 國籍等...

iOS 屬性動畫

第一步 準備動畫 引數1 動畫的作用,區分多個動畫的標識 引數2 傳遞引數 null c語言中使用 nil oc使用 uiview beginanimations 改變大小 context null 在準備動畫的時候可以設定動畫屬性 uiview setanimationduration 0.5 持...

ios 屬性特性

ios 屬性特性,屬性的特性 為屬性提供了一些關鍵字用以控制setter getter的實現細節,這些關鍵字稱為屬性的特性 attribute 2 讀寫性 1 readonly 唯讀狀態,是告訴編譯器,屬性只生成getter方法,不生成setter方法 2 readwrite 讀寫狀態,是告訴編譯器...