objective-c學習心得

Ps. 在寫本篇文章時,本人已學過c、c++,c#也有略微接觸,所以oc的學習心得,也是以已學的爲基礎,來總結。

 

1、#include 變 #import;printf 變 NSLog;別漏了,還有一個@,寫helloworld的感觸,變化不大,還能適應。

2、bool類型,NO爲0,YES爲1。

3、撇掉函數的概念,用類的方法來命名。類和類的方法格式爲

@interface ClassName

{

}

- (type) FunctionName:(type) para1 (type) para2;

@end

 

@implementation ClassName

{

}

- (type) FunctionName:(type) para1 (type) para2

{

}

@end

4、實例化對象和調用方法,爲

id object = [ClassName new];

[object FunctionName:para1 para2];

5、繼承。

@interface ClassName:ClassName

奇怪的是,oc不支持多繼承。

子類調用超類方法時,用[super a];

但如果要調用超類的超類的方法,就糾結了,一個囉嗦的方法是在超類的方法裏面調用超類的超類的方法,但這明顯比C++還複雜。但也有人說這樣的話,不如不要這麼繼承,而是複合那兩個超類。

6、引用

如果在類定義中通過複合的方式,來引用其他類,那麼oc支持一種全新的方式,@class ClassName,通過這樣,告訴編譯器這個類是真正存在的。而如果是繼承某個超類,就無法用這種方式了,還是要#import,因爲編譯器需要知道該超類的所有定義信息,然後去檢查子類繼承是否有錯。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章