OC語言基礎六 self和super

2021-09-19 01:26:38 字數 595 閱讀 7547

oc語言的self相當於c++語言的this,是乙個指標,隨著類的建立預設被建立出來。self和super的使用範圍是在類的內部,都只能用來呼叫方法。

+(instancetype)person

-(void)setname:(nsstring *)name

person *person=[[self alloc] init];

[person setname:@"tom"]

輸出的都是person

//peson的子類personme

-(void)setname:(nsstring *name)

-(void)test

雖然self和super指向的是相同的資料接收者,但是self 在查詢我們的方法的時候是先從當前類開始,順著繼承鏈依次往上查詢,如果發現子類已經實現了我們的方法,就直接使用子類的方法;super查詢是先從父類開始,如果發現父類已經實現了這個方法的邏輯,他就不會再往下查詢了,直接去執行父類的setname的方法,如果父類沒有實現,才會順著繼承鏈往下依次查詢它的子類,看哪個子類實現了這個方法。

OC語言 OC語言基礎 類

1 oc檔案的擴充套件名為.m c 2 oc語言完全相容 c語言,即 oc語言中可以寫 c語言 3 oc語言也可以寫 c 語言,但是如果要寫 c 語言,則 oc擴充套件名為 mm 4 oc語言是在 c語言的基礎上增加了最小層的物件導向語言 型別oc語言 c語言關鍵字 基本上所有的都以 開頭 publ...

OC語言 OC語言基礎 類

一 oc語言基礎 1 oc檔案的擴充套件名為.m c 2 oc語言完全相容c語言,即oc語言中可以寫c語言 3 oc語言也可以寫c 語言,但是如果要寫c 語言,則oc擴充套件名為.mm 4 oc語言是在c語言的基礎上增加了最小層的物件導向語言 二 oc語言與c語言 三 1.import 與 incl...

OC中self和super的使用

1 self用在物件方法中,self指代的是呼叫當前方法的那個物件,可以呼叫其它物件方法。2 self用在類方法中,self指代的是當前類,可以呼叫其它類方法,不可以呼叫物件方法。3 self修飾例項變數 一般在set方法中使用 用在形參變數和例項變數同名時。例 void setspeed int ...