日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢(xún)
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
OC類(lèi)的介紹-創(chuàng)新互聯(lián)
類(lèi)的本質(zhì)OC類(lèi)的介紹
 1 類(lèi)的本質(zhì)其實(shí)也是一個(gè)對(duì)象(類(lèi)對(duì)象)
 2 
 3 類(lèi)對(duì)象
 4 類(lèi)對(duì)象再程序運(yùn)行時(shí)一直存在
 5 類(lèi)對(duì)象是一種數(shù)據(jù)結(jié)構(gòu),存儲(chǔ)類(lèi)的基本信息:類(lèi)大小,類(lèi)名稱(chēng),類(lèi)的版本以及消息與函數(shù)的映射表等
 6 類(lèi)對(duì)象所保存的信息在程序編譯時(shí)確定,在第一次使用該類(lèi)的時(shí)候加載到內(nèi)存中
 7 類(lèi)對(duì)象代表類(lèi),class代表類(lèi)對(duì)象,類(lèi)方法屬于類(lèi)對(duì)象
 8 如果消息的接受者是類(lèi)名,則類(lèi)名表示類(lèi)對(duì)象
 9 運(yùn)行時(shí),所有類(lèi)的實(shí)例都由類(lèi)對(duì)象生產(chǎn),類(lèi)對(duì)象會(huì)把實(shí)例的isa地值修改成自己的地址,每個(gè)實(shí)例的isa都指向該實(shí)例的類(lèi)對(duì)象,
10 從類(lèi)對(duì)象里可以知道父類(lèi)信息、可以響應(yīng)的方法等
11 類(lèi)對(duì)象只能使用類(lèi)方法,不能用實(shí)例方法
12 
13 例:
14   Person *p = [Person new];
15   p 實(shí)例對(duì)象
16   Person 也是一個(gè)對(duì)象(類(lèi)對(duì)象),是Class類(lèi)型

類(lèi)對(duì)象的獲取

10年建站經(jīng)驗(yàn), 成都網(wǎng)站制作、成都網(wǎng)站建設(shè)客戶(hù)的見(jiàn)證與正確選擇。成都創(chuàng)新互聯(lián)提供完善的營(yíng)銷(xiāo)型網(wǎng)頁(yè)建站明細(xì)報(bào)價(jià)表。后期開(kāi)發(fā)更加便捷高效,我們致力于追求更美、更快、更規(guī)范。
 1 1)通過(guò)實(shí)例對(duì)象獲取
 2     Dog  *dog =[Dog new];
 3     Dog *d2 = [Dog new];
 4 
 5  //第一種方法獲取類(lèi)對(duì)象 6     Class c =[dog class];
 7     Clsss c2 =[d2 class];
 8 
 9     NSLog(@"%p",c);
10     NSLog(@"%p",c2);
11 
12 2)通過(guò)類(lèi)名獲取(類(lèi)名其實(shí)就是類(lèi)對(duì)象)
13 
14      Class c3=[Dog class];
15      NSLog(@"%p",c3);

類(lèi)對(duì)象的使用

 1 原來(lái)使用類(lèi)名可以做哪些事情?
 2     創(chuàng)建對(duì)象
 3     [Person new];
 4     調(diào)用類(lèi)方法
 5     [Person test];//test是類(lèi)方法 6 
 7  Person *p =[Person new];
 8   
 9  
10 
11  c1---->Person
12 
13   類(lèi)對(duì)象的使用
14   Class c1 =[p class];  //Person15 1)創(chuàng)建實(shí)例對(duì)象
16   Person *p1= [c1 new];
17 2)調(diào)用類(lèi)方法
18  [p test]; 調(diào)用的是實(shí)例方法 -動(dòng)態(tài)的
19    [c1 test]調(diào)用的是類(lèi)方法 +靜態(tài)的

SEL類(lèi)型

 1 SEL:全稱(chēng)selector表示方法的存儲(chǔ)位置
 2 
 3 Person *p =[[Person allco]init];
 4 [p test];
 5 
 6 尋找方法的過(guò)程:
 7 1)首先把test這個(gè)方法名包裝成sel類(lèi)型的數(shù)據(jù);
 8 2)根據(jù)SEL數(shù)據(jù)找到對(duì)應(yīng)的方法地址;
 9 3)根據(jù)方法地址調(diào)用相應(yīng)的方法
10 4)注意:在這個(gè)操作過(guò)程中有緩存,第一次找的時(shí)候是一個(gè)一個(gè)的找,非常耗性能,之后再用到的時(shí)候就直接使用
11 
12 關(guān)于_cmd:每個(gè)方法的內(nèi)部都有一個(gè)_cmd,代表著當(dāng)前方法
13 
14 SEL其實(shí)是對(duì)方法的一種包裝,將方法包裝成一個(gè)SEL類(lèi)型的數(shù)據(jù),去尋找對(duì)應(yīng)的方法地址,找到方法地址就可以調(diào)用方法.這些都是運(yùn)行時(shí)特征,發(fā)消息就是發(fā)送SEL,然后根據(jù)SEL找到地址,調(diào)用方法
15   //手動(dòng)的把eat方法包裝成SEL類(lèi)型16   SEL s1 =@selector(eat);
17   //通過(guò)s1去調(diào)用了18   [p2 perfomSelector :s1];

本文名稱(chēng):OC類(lèi)的介紹-創(chuàng)新互聯(lián)
分享地址:http://www.dlmjj.cn/article/icpco.html