一 構造方法的呼叫
完整的建立乙個可用的物件:person *p=[person new];
new方法的內部會分別呼叫兩個方法來完成
2件事情,
1)使用
alloc
方法來分配儲存空間(返回分配的物件);
2)使用
init
方法來對物件進行初始化。
可以把new
方法拆開如下:
1.呼叫類方法+alloc
分配儲存空間,返回未經初始化的物件
person *p1=[person alloc];
2.呼叫物件方法-init
進行初始化,返回物件本身
person *p2=[p1 init];
3.以上兩個過程集成為一句:
person *p=[[person alloc] init];
二 構造方法使用注意
(1)子類擁有的成員變數包括自己的成員變數以及從父類繼承而來的成員變數,在重寫構造方法的時候應該首先對從父類繼承而來的成員變數先進行初始化。
(2)原則:先初始化父類的,再初始化子類的。
(3)重寫構造方法的目的:為了讓物件方法一建立出來,成員變數就會有一些固定的值。
自定義構造方法的規範
(1)一定是物件方法,以減號開頭
(2)返回值一般是id型別
(3)方法名一般以initwith開頭
自定義構造方法的使用注意
(1)自己做自己的事情
(2)父類的方法交給父類的方法來處理,子類的方法處理子類自己獨有的屬性
oc構造方法
主題 exam self 是訊息傳送者,不要簡單理解為物件 self super init if self return self 下圖為isa截圖 在物件處打一斷點可到如下內容,isa是指標,指向類方法 void setage等 在init構造實現賦值和輸出 需要有賦值方法和輸出方法 例如 set...
oc構造方法
在oc中init開頭的方法,我們稱之為構造方法 構造方法的用途 用於初始化乙個物件,讓某個物件一建立出來就擁有某些屬性和值 int main int argc,const char argv person.m day14 created by xiaomage on 15 6 23.import p...
OC 構造方法
一 構造方法 建立物件時使用的new方法繼承自nsobjectnew方法分為兩步 第一步是給物件分配儲存空間,使用alloc方法,第二步是初始化物件,使用init方法,即構造方法。格式如下 person p person alloc init 重寫構造方法 使建立出來的物件,成員變數會有一些初始固定...