iOS面試題-每日十道-第四天

個(gè)人理解 有誤的地方 歡迎小伙伴能給指出

一. 簡(jiǎn)述iOS動(dòng)畫機(jī)制

iOS分為顯式動(dòng)畫,隱式動(dòng)畫

  • 顯式動(dòng)畫: 對(duì)一些屬性做指定的自定義動(dòng)畫,或者創(chuàng)建非線性動(dòng)畫,比如沿著任意一條曲線移動(dòng)。
  • 隱式動(dòng)畫:主要是作用于非根層,也就是自己手動(dòng)創(chuàng)建的layer,當(dāng)對(duì)它的一些屬性進(jìn)行修改時(shí),會(huì)自動(dòng)產(chǎn)生一些動(dòng)畫效果

二. 什么是UIKit?

UIKit是iOS上的AppKit的變種,用于為iOS應(yīng)用程序提供界面對(duì)象和控制器。
與AppKit類似,UIKit框架有UIResponder,也采用事件(UIEvent類)機(jī)制。
另外,iOS上的應(yīng)用程序都是一個(gè)UIApplication實(shí)例。 所有的iOS應(yīng)用程序都基于UIKit ,它提供了在屏幕上繪制的機(jī)制,捕獲事件,和創(chuàng)建通用用戶界面元素。
UIKit也通過管理顯示在屏幕上的組件來組織復(fù)雜的項(xiàng)目。
使用UIKit可以:
? 構(gòu)建和管理你的用戶界面
? 捕獲觸摸和基于移動(dòng)的事件
? 呈現(xiàn)文字和web內(nèi)容
? 優(yōu)化你的多任務(wù)程序
? 創(chuàng)建定制的用戶界面元素

三. 三此握手,具體怎么交互?

  • 第一次握手:客戶端發(fā)送syn(syn=j)包到服務(wù)器;并進(jìn)入SYN_SEND狀態(tài),等待服務(wù)器確認(rèn)

  • 第二次握手:服務(wù)器收到syn包,確認(rèn)客戶的SYN(ack=j+1),同時(shí)自己也發(fā)送一個(gè)SYN包(syn=k),即SYN+ACK包,此時(shí)服務(wù)器進(jìn)入SYN_RECV狀態(tài)

  • 第三次握手:客戶端收到服務(wù)器的SYN+ACK包,向服務(wù)器發(fā)送確認(rèn)包ACK(ack=k+1),此包發(fā)送完畢,客戶端和服務(wù)器進(jìn)入ESTABLISHED狀態(tài),完成三次握手。

注意:三次握手中發(fā)送的包不包含數(shù)據(jù),三次握手完畢,客戶端和服務(wù)器才正式開始傳送數(shù)據(jù)。TCP連接一旦建立,在通信雙方的任何一方主動(dòng)關(guān)閉連接之前,TCP連接都將被一直保持下去

四. 什么是安全釋放?

對(duì)象唄釋放的時(shí)候,指向nil

五. 在iphone上有兩件事情要做,請(qǐng)問是在一個(gè)線程里按順序做效率高還是兩個(gè)線程里做效率高?

如果兩件事有依賴關(guān)系,事件二必須等到事件一執(zhí)行完畢才執(zhí)行,那么放在一個(gè)線程就可以了,如果兩者并沒有什么關(guān)聯(lián),放到兩個(gè)線程并發(fā)執(zhí)行效率較高

六. 4、NSArray和NSSet有何區(qū)別?

NSSet: 里面存放的元素是無(wú)序的,不重復(fù)的,可以通過anyObject來訪問單個(gè)元素.在搜索一個(gè)一個(gè)元素時(shí)NSSet比NSArray效率高,主要是它用到了數(shù)據(jù)結(jié)構(gòu)中的哈希算法,而NSArray則是需要遍歷全部的數(shù)組元素,效率會(huì)低一些.
NSArray : 里面存放的元素是有序的,可以有重復(fù)的對(duì)象,可以通過下標(biāo)來訪問里面的數(shù)組元素

七. __weak什么時(shí)候用?

當(dāng)兩個(gè)對(duì)象互相引用的時(shí)候,一端用strong,另一端必須用weak .例如: A擁有B, B也擁有A, 那么必須一方使用weak
一般UI控件都可以使用weak,因?yàn)樽陨硪呀?jīng)對(duì)它進(jìn)行一次強(qiáng)引用,沒有必要再?gòu)?qiáng)引用一次.

八. 列舉幾個(gè)常用集合類和存放二進(jìn)制數(shù)據(jù)類?

NSArray,NSDictionary,NSSet,以及他們的可變類
存放二進(jìn)制的有NSData類

九. 多線程,寫出常用的幾個(gè)類

  • Pthread
  • NSThread
  • GCD
  • NSOperationQueue

十. 一般在哪個(gè)函數(shù)中創(chuàng)建某個(gè)View的子view?

viewDidLoad方法


純手動(dòng) 有地方是個(gè)人理解 有誤的地方希望大家能給指出 謝謝
如果對(duì)您有幫助 希望能給個(gè)關(guān)注和喜歡~~~

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 一. CALayer和UIView的區(qū)別聯(lián)系 1 UIView是UIKIt的只能在iOS使用, CALayer是Q...
    yhj0129閱讀 1,735評(píng)論 0 1
  • 把網(wǎng)上的一些結(jié)合自己面試時(shí)遇到的面試題總結(jié)了一下,以后有新的還會(huì)再加進(jìn)來。 1. OC 的理解與特性 OC 作為一...
    AlaricMurray閱讀 2,657評(píng)論 0 20
  • 1、截取字符串”20 | http://www.baidu.com”中,”|”字符前面和后面的數(shù)據(jù),分別輸出它們 ...
    強(qiáng)子ly閱讀 3,134評(píng)論 8 46
  • 史上最全的iOS面試題及答案 iOS面試小貼士———————————————回答好下面的足夠了----------...
    Style_偉閱讀 2,567評(píng)論 0 35
  • 文/妙蛙種子君 圖/網(wǎng)絡(luò) (一) 在三國(guó)演義里,有這樣的一段情節(jié)。 當(dāng)時(shí)黃巾盛行,朝廷為了滅掉他們就派出了盧植、皇...
    解讀男人閱讀 412評(píng)論 0 0

友情鏈接更多精彩內(nèi)容