一、oc語言基礎
1>oc檔案的擴充套件名為.m、.c;
2>oc語言完全相容c語言,即oc語言中可以寫c語言;
3>oc語言也可以寫c++語言,但是如果要寫c++語言,則oc擴充套件名為.mm;
4>oc語言是在c語言的基礎上增加了最小層的物件導向語言;
二、oc語言與c語言
三、
1.#import 與#include:
1> 跟#include一樣,拷貝檔案的內容;
2> 可以自動防止檔案的內容被重複拷貝
2.foundation/foundation.h
1>foundation表示是foundation框架,foundation.h成為foundation框架中的主標頭檔案,此檔案中包含了框架中所有其他標頭檔案;
2> 主標頭檔案:最主要的標頭檔案,名字一般跟框架名稱一樣,包含了框架中的所有其他標頭檔案
*四、 oc檔案終端執行過程
1> 編寫oc原始檔:.m、.c
2> 編譯:cc -c ***.m ***.c
(只有用到了foundation框架才需要加上-framework foundation)
4> 執行:./a.out
五、oc的bool型別
1>bool型別其實是char型別,如下:typedef signed char bool
2>bool型別中的yes和no是巨集定義,將1、0強制轉換成bool型別:
#define yes (bool)1
#define no (bool)0
類oc語言物件導向語言,c語言是面向過程語言,物件導向語言中包含兩個重要的概念:類和物件。oc利用類來建立物件,物件是類的具體存在。
一、類的設計:
類由類名、屬性和行為構成。
1> 類名:類名的第乙個字母必須是大寫、不能有下劃線、多個英文單詞,用駝峰標識,例如:person;
2>屬性:屬性的命名一般以_開頭,例如:int _age;
3>行為:一般小寫,如果多個英文單詞,採用駝峰標識;
舉例:* 類名:car
* 屬性:wheel、speed
* 行為:run
*
二、完整的類:
類在記憶體中只有乙份儲存空間,在第一次呼叫類的時候,記憶體分配儲存空間給類,類中只存放方法列表
三、類的宣告:1>類的宣告中包含類的屬性和行為;
2>類的屬性也稱為類的成員變數(例項變數),寫在大括號中;
3>類的行為也稱為類的方法,寫在大括號外邊,格式:- (返回值型別)方法名:(引數型別)引數名1:(引數型別)引數名2,例如- (void)test; -(int)pow2:(int)num;
4>類的宣告格式:
@inte***ce 類名 : nsobject //nsobject目的是:讓car這個類具備建立物件的能力
@end例如:
五、main函式中類的應用
1>在oc中,想執行一些行為,就寫上乙個中括號[行為執行者 行為名稱]
2>建立出乙個新物件後會返回新物件本身(新物件的位址)
3>利用類來建立物件
六、類的設計完整**示例:類的設計常見錯誤:
1>@inte***ce和@end中間不能巢狀@implementation和@end
2>方法的宣告中不能寫實現;
3>方法的宣告在{}大括號外面;
4>成員變數在宣告時不能初始化,只有物件才有此屬性,所以只有物件才能賦值;
5>不能寫- static (void)run;
oc方法常見錯誤
1>方法只有宣告,沒有實現(經典錯誤)
2>方法沒有宣告,只有實現(編譯器警告,但是能呼叫,oc的弱語法)
3>編譯的時候:訪問沒有的成員變數直接報錯,訪問沒有的方法,只是警告
七、函式與方法
1.物件方法都是以減號 -
2.物件方法的宣告必須寫在@inte***ce和@end之間
物件方法的實現必須寫在@implementation和@end之間
3.物件方法只能由物件來呼叫
4.物件方法歸類\物件所有
函式
1.函式能寫在檔案中的任意位置(@inte***ce和@end之間除外),函式歸檔案所有
2.函式呼叫不依賴於物件
3.函式內部不能直接通過成員變數名訪問某個物件的成員變數
OC語言 OC語言基礎 類
1 oc檔案的擴充套件名為.m c 2 oc語言完全相容 c語言,即 oc語言中可以寫 c語言 3 oc語言也可以寫 c 語言,但是如果要寫 c 語言,則 oc擴充套件名為 mm 4 oc語言是在 c語言的基礎上增加了最小層的物件導向語言 型別oc語言 c語言關鍵字 基本上所有的都以 開頭 publ...
oc基礎語言
基 礎 語 法 objective c是c語言的母集合,就是物件導向的。1 物件導向和面向過程 物件導向和面向過程是程式設計的兩種思考方式。物件導向,簡稱oop,是完成一項工作需要那些步驟。面向過程,簡稱opp,是完成工作的每一步是怎麼完成的,注重過程。2 類和物件 1 類是一組具有相同 特徵 屬性...
OC語言基礎 01
1 import跟 include一樣,拷貝檔案的內容 2 import可以自動防止檔案的內容被重複拷貝 c語言中h檔案中我們需要新增 ifndef才能實現這個功能 在c語言中,我們可以使用很多的庫方法去方便開發。例如,stdio.h檔案中的printf函式用於輸出資訊。相應應在oc語言中,也有很多...