OC语言--OC语言基础、类
一、OC語(yǔ)言基礎(chǔ)
1>OC文件的擴(kuò)展名為.m、.c; 2>OC語(yǔ)言完全兼容C語(yǔ)言,即OC語(yǔ)言中可以寫(xiě)C語(yǔ)言; 3>OC語(yǔ)言也可以寫(xiě)C++語(yǔ)言,但是如果要寫(xiě)C++語(yǔ)言,則OC文件擴(kuò)展名為.mm; 4>OC語(yǔ)言是在C語(yǔ)言的基礎(chǔ)上增加了最小層的面向?qū)ο笳Z(yǔ)言;二、OC語(yǔ)言與C語(yǔ)言
三、 <#import Foundation/Foundation.h>
1.#import 與#include:
2.Foundation/Foundation.h
1>Foundation表示是Foundation框架,Foundation.h成為Foundation框架中的主頭文件,此文件中包含了框架中所有其他頭文件;2> 主頭文件:最主要的頭文件,名字一般跟框架名稱(chēng)一樣,包含了框架中的所有其他頭文件*四、 OC文件終端運(yùn)行過(guò)程
1> 編寫(xiě)OC源文件:.m、.c 2> 編譯:cc -c xxx.m xxx.c 3> 鏈接:cc xxx.o xxx.o -framework Foundation (只有用到了Foundation框架才需要加上-framework Foundation) 4> 運(yùn)行:./a.out五、OC的BOOL類(lèi)型
1>BOOL類(lèi)型其實(shí)是char類(lèi)型,如下:Typedef signed char BOOL 2>BOOL類(lèi)型中的YES和NO是宏定義,將1、0強(qiáng)制轉(zhuǎn)換成BOOL類(lèi)型: #define Yes (BOOL)1 #define NO (BOOL)0類(lèi)
OC語(yǔ)言面向?qū)ο笳Z(yǔ)言,C語(yǔ)言是面向過(guò)程語(yǔ)言,面向?qū)ο笳Z(yǔ)言中包含兩個(gè)重要的概念:類(lèi)和對(duì)象。OC利用類(lèi)來(lái)創(chuàng)建對(duì)象,對(duì)象是類(lèi)的具體存在。
一、類(lèi)的設(shè)計(jì):
類(lèi)由類(lèi)名、屬性和行為構(gòu)成。
二、完整的類(lèi):
類(lèi)在內(nèi)存中只有一份存儲(chǔ)空間,在第一次調(diào)用類(lèi)的時(shí)候,內(nèi)存分配存儲(chǔ)空間給類(lèi),類(lèi)中只存放方法列表三、類(lèi)的聲明:
1>類(lèi)的聲明中包含類(lèi)的屬性和行為;
2>類(lèi)的屬性也稱(chēng)為類(lèi)的成員變量(實(shí)例變量),寫(xiě)在大括號(hào)中;
3>類(lèi)的行為也稱(chēng)為類(lèi)的方法,寫(xiě)在大括號(hào)外邊,格式:- (返回值類(lèi)型)方法名:(參數(shù)類(lèi)型)參數(shù)名1:(參數(shù)類(lèi)型)參數(shù)名2,例如- (void)test; -(int)pow2:(int)num;
4>類(lèi)的聲明格式:
@interface 類(lèi)名 : NSObject //NSObject目的是:讓Car這個(gè)類(lèi)具備創(chuàng)建對(duì)象的能力
{ @public //@public可以讓外部的指針間接訪(fǎng)問(wèn)對(duì)象內(nèi)部的成員變量
類(lèi)的屬性1;
類(lèi)的屬性2;
…
}
(void)類(lèi)的行為名稱(chēng);
(返回值類(lèi)型)類(lèi)的行為名稱(chēng):(參數(shù)類(lèi)型)參數(shù);
@end //@interface和@end成對(duì)出現(xiàn)
示例:
類(lèi)的聲明注意事項(xiàng):
四、類(lèi)的實(shí)現(xiàn):用來(lái)實(shí)現(xiàn)@inteface中聲明的方法
類(lèi)的實(shí)現(xiàn)格式:
例如:
五、Main函數(shù)中類(lèi)的應(yīng)用
1>在OC中,想執(zhí)行一些行為,就寫(xiě)上一個(gè)中括號(hào)[行為執(zhí)行者 行為名稱(chēng)] 2>創(chuàng)建出一個(gè)新對(duì)象后會(huì)返回新對(duì)象本身(新對(duì)象的地址) 3>利用類(lèi)來(lái)創(chuàng)建對(duì)象六、類(lèi)的設(shè)計(jì)完整代碼示例:
類(lèi)的設(shè)計(jì)常見(jiàn)錯(cuò)誤:
OC方法常見(jiàn)錯(cuò)誤
1>方法只有聲明,沒(méi)有實(shí)現(xiàn)(經(jīng)典錯(cuò)誤) 2>方法沒(méi)有聲明,只有實(shí)現(xiàn)(編譯器警告,但是能調(diào)用,OC的弱語(yǔ)法) 3>編譯的時(shí)候:訪(fǎng)問(wèn)沒(méi)有的成員變量直接報(bào)錯(cuò),訪(fǎng)問(wèn)沒(méi)有的方法,只是警告七、函數(shù)與方法
1.對(duì)象方法都是以減號(hào) - 2.對(duì)象方法的聲明必須寫(xiě)在@interface和@end之間對(duì)象方法的實(shí)現(xiàn)必須寫(xiě)在@implementation和@end之間3.對(duì)象方法只能由對(duì)象來(lái)調(diào)用4.對(duì)象方法歸類(lèi)\對(duì)象所有函數(shù)
1.函數(shù)能寫(xiě)在文件中的任意位置(@interface和@end之間除外),函數(shù)歸文件所有2.函數(shù)調(diào)用不依賴(lài)于對(duì)象3.函數(shù)內(nèi)部不能直接通過(guò)成員變量名訪(fǎng)問(wèn)某個(gè)對(duì)象的成員變量總結(jié)
以上是生活随笔為你收集整理的OC语言--OC语言基础、类的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: AD17 保存PCB文件时提示失败
- 下一篇: android仿ios录音动画,仿IOS