1. 不要直接更改由繼承得到的例項變數的值,一定要使用方法來更改它們
2. 只能繼承乙個
某些語言(例如c++)具有多重繼承特性,在這種情況下,乙個類可以直接從兩個或多個類繼承而來。但objective-c不支援多繼承,如果你嘗試在objective-c中使用多繼承,編譯器將不能正常識別它們,你可以通過objective-c的其他特性獲取多繼承的有點,例如分類和協議
3. 對於方法的定義,使用空正文或者返回乙個虛值都是可以的
比如:shape類的draw方法
-(void) draw
{} //這樣shape的子類都能實現各自不同的方法
4. 建立乙個新類時,其物件首先從自身的超類中繼承例項變數,然後(可選)新增他們自己的例項變數。
5. super關鍵字
objective-c提供某些方式來重寫方法,並且仍然呼叫超類的實現方式。當需要超類實現自身的功能,同時在前面或後面執行某些額外的工作時,這種機制非常有用,為了呼叫繼承方法的實現,需要使用super作為方法呼叫的目標
@implementationcircle
- (void
) setfillcolor: (shapecolor) c
[super setfillcolor: c];
}@end
super來自**呢?它既不是擦承諾書也不是例項變數,而是由objective-c編譯器提供的某種神奇功能。向super傳送訊息時,實際上實在請求objective-c向該類的超類傳送訊息。如果超類中沒有定義訊息,objective-c將按照通常的方式在繼承鏈中繼續查詢對應的訊息。
Objective C 學習筆記
1 is a 是乙個 繼承,提高執行效率,減少重複 2 has a 有乙個 復合,物件引用其它物件時,利用其它物件特性。3 返回屬性值的訪問方法,名稱中不能使用get這個詞 4 類名首字母大寫,變數首字母小寫。5 在objective c中所有物件間互動都是通過指標實現的。6 指標值被賦值,只有乙個...
Objective c學習筆記
property是object c的乙個特性,可以讓我們輕鬆實現成員變了的setting和getting方法。具體的語法如下 以成員變數nsstring m name為例 標頭檔案中宣告如下 property nsstring m name m檔案實現 synthesize m name 這樣我們便...
Objective c學習筆記
一 ojective c 建立物件涉及到一下註解 inte ce implementation 前乙個註解定義的是要實現的行為 後乙個註解是實現inte ce定義的行為 1.1在objective c中總共有4個基本資料型別,分別是int float double char 1.2限定詞 限定值有 ...