Foundation架構,foundation

來源:互聯網
上載者:User

Foundation架構,foundation

Foundation架構
一、Foundation課程安排
1.NSObject、NSString、NSMutableString
2.NSNumber、NSValue、NSDate、NSArray NSMutableArray
3.NSArray的遍曆、NSArray的新文法(IOS6)、NSArray Copy、NSArray排序
4.NSSet、NSMutableSet、NSDictionary、NSMutableDictionary、Block程式碼片段(函數指標)
二、Api應用程式介面 文檔(說明書)
Application Program Interface
三、Foundation簡介
Foundation Framework OSX IOS 基本架構
類庫(Class Library)
*基礎類:
NSObject、NSString、NSMutableString
NSNumber、NSValue、NSDate…
*集合類:
NSArray、NSSet、NSMutableSet、NSDictionary、NSMutableDictionary
網路類:…
檔案類:...
四、NSObject
1.概述:所有類的父類,提供了系統運行時的一些準系統。
2.類的初始化
a.類載入的時候,自動調用+load方法
b.當第一次使用類時,自動調用+initialize方法
c.類在使用之前會執行此方法,且只會執行一次
3.對象的建立和釋放
alloc init dealloc new([[xxx alloc]init])
4.-copy
a.並不是所有對象都有copy方法,如果一個對象支援copy功能,首先要遵守協議NSCopying協議,必須實現copyWithZone方法。
b.如果不但想複製對象,而且還要複製對象的值,一般還要重寫有參的初始化方法。
5.類對象
a.類執行個體化變成對象,類的對象。(堆)
b.類載入到記憶體中並建立類在記憶體中的對象(代碼區),類對象。
c.普通的類不佔堆記憶體空間,類對象是占代碼區空間的。
d.向類發送class訊息,可以建立類對象。
Class class = [TRStudent class];
e.比較“類”資訊的時候,需要使用類對象,判斷一個類是否是另一個類的子類。
[TRPerson isSubclassOfClass:[TRStudent class]]
f.避免多態使用時的不安全性問題
6.方法選取器 @selector
a.和C語言中的函數指標相類似
b.SEL就是方法的類型 sel方法變數
SEL sel = @selector(study);
c.某個類是否存在某個方法(訊息)
BOOL b = [TRStudent instancesRespondToSelector:@selector(study)]
d.可以向對象發送任何訊息,而不需要在編譯的時候聲明這些訊息
[stu2 performSelector:sel2];
與普通向對象發送訊息區別:編譯器不會驗證是否聲明該方法,直接向對象發送訊息,最好驗證一下對像是否存在該訊息,以保證代碼的安全性。
7.協議選取器
a.協議的引用指向一個協議
Protocol* p = @protocol(NSCopying);
b.可以判斷一個類是否遵守了某個協議
BOOL b = [TRStudent conformsToProtocol:p];
8.其它方法
a.判斷一個引用指向的對象是否是某種類型或子類型
-(BOOL)isKindOfClass:(Class)c;
b.判斷一個引用(執行個體)指向的對象是否是某種類型
-(BOOL)isMemberOfClass:(Class)c;
c.比較類資訊的時候,需要使用類對象,判斷一個類是否是另一個類的子類
+(BOOL)isSubclassOfClass:(Class)c;

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.