Objective C 日記 物件初始化

2022-02-11 01:18:59 字數 1163 閱讀 5079

oc中建立物件的方法有兩種:

[類名 new]

[[類名 alloc] int]

分配和初始化是兩個分離的操作:來做nsobject的類方法alloc為物件分配一塊記憶體區域並將其清零,例項方法init用於獲得乙個物件並使其執行

分配:allocaton[,æləu'keiʃən]

n. 分配,配置;安置

:從作業系統獲得一塊記憶體並將其指定為存放物件例項變數的位置

alloc:某個類傳送alloc訊息時就是為該類分配一塊足夠大的記憶體,以存放該類的全部例項變數,同時alloc方法分配這塊記憶體初始化都為0。例如:所有的bool型別變數初始化為no,所有的int型別被初始化為0,所有的float型別變數被初始化為0.0,所有指標被初始化為nil。

注意物件必須先分配再初始化最後才能使用

1、初始化initialization[i,niʃəlai'zeiʃən, -li'z-]

n. 初始化;賦初值 :從作業系統中取得一塊記憶體用於儲存物件(初始化)

使用方式:

car *car= [[car alloc] init];

2、編寫初始化方法  

-(id

) init

return

(self);

}

說明:該宣告中最新執行的是[super init],它的作用是使超類完成它們自己的初始化工作,之後使子類有機會實現初始化(如果[super init]不為nil)。最後將[super init]返回值賦給self。

記住:這個賦值操作只會影響該init方法中self的值不會影響該方法以外的任何內容

定義:指定初始化函式:通常接受引數最多的初始化方法最終成為指定初始化函式

規則:1、不需要為你自己的類建立初始化函式方法

2、如果構造乙個初始化函式則一定要在你自己的指定初始化函式中呼叫超類的指定初始化函式

3、如果初始化函式不止乙個,則要選擇乙個作為初始化函式。被選定的方法應該呼叫超類的指定初始化函式

在初始化方法中,需要呼叫自己的指定初始化函式或超類指定的初始化函式。一定要將超類的初始化函式的值賦給self物件並返回給初始化方法的值。超類可能決定返回乙個完全不同的物件。

objective c物件導向

oop object oriented programming 特徵 多型 繼承 封裝 兩部分組成 1.inte ce部分 定義類的公共介面和類的資料成員 2.implementation部分 實現這些方法的實際方法 main檔案中新增friend類 inte ce 部分 inte ce frien...

Android學習日記 Activity初步了解

activity,是android的四大元件之一,也是我學習的android的第一課。四大元件分別是 activity service broadcast receiver content provide 當乙個android程式執行時,系統會先訪問androidmainfest.xml這個檔案,這...

Objective C之類和物件

面向過程程式設計 procedure oriented programming,pop 以事件為中心,關心完成該事件的詳細步驟,一步一步如何實現.物件導向程式設計 object oriented programming,oop 以事物為中心,也就是引數事件的參與者,設計事物的功能,而完成事件只是事物...