iOS基礎(chǔ)面試題

  • 對頭文件的引用import和include區(qū)別
    • import頭文件會去重,最多包含一次
    • include會重復(fù)包含
  • 解釋一下ARC
    • auto reference count(自動引用計數(shù))
    • 不用手動管理對象的引用計數(shù)
    • (深入)編譯的時候插入引用計數(shù)的管理代碼
    • (深入)不是GC
  • 解釋一下block,什么時候使用block
    • block是oc中的閉包,閉包你懂的。。。
    • gcd(OC中常用的多任務(wù)解決方案)的語法中常用block來實現(xiàn)
    • (深入問題)?block會在堆上創(chuàng)建,還是棧上創(chuàng)建,或者其它地方
    • 目前的oc基本上都在堆上創(chuàng)建,除了全局的block和不捕獲其它變量的block會在靜態(tài)代碼區(qū)
  • 寫一個block聲明,接收1個布爾參數(shù),返回一個字符串
    • NSString *(^aBlock)(BOOL b)
    • 形參的名字可以省略不寫
  • frame和bounds有什么不同?
    • frame指的是:該view在父view坐標(biāo)系統(tǒng)中的位置和大小。(參照點(diǎn)是父視圖的坐標(biāo)系統(tǒng))
    • bounds指的是:該view在本身坐標(biāo)系統(tǒng)中 的位置和大小。(參照點(diǎn)是本身坐標(biāo)系統(tǒng)),一般bounds的原點(diǎn)是(0,0)
  • iOS異步操作(多線程)一般都有哪些方式
    • gcd(首選)
    • NSOperation和NSOperation(可以設(shè)置并發(fā)數(shù)和依賴關(guān)系)
    • NSThread
    • posix thread(即pthread)
  • viewDidLoad和loadView什么時候被調(diào)用(稍難)
    • 先執(zhí)行l(wèi)oadView,后執(zhí)行viewDidLoad
    • loadView負(fù)責(zé)創(chuàng)建View
    • 界面是Interface Builder(IB)或者StoryBoard創(chuàng)建的時候,loadView不能被重寫
    • 這兩個函數(shù)都不能手動調(diào)用
  • OC的Category(分類)有什么作用
    • 可以給已有的類(比如系統(tǒng)的類)增加新的方法和實現(xiàn)
    • 不能增加屬性
  • NS和CF分別是什么含義
    • NS是NextStep的縮寫,在iOS中以NS開頭的類表示這個類屬于Cocoa
    • CF是CoreFoundation的縮寫,是一個C庫,里面是以CF開頭的函數(shù)和結(jié)構(gòu)體
  • strong和weak的區(qū)別(和前面的ARC有關(guān))
    • weak定義的變量不持有具體的對象,不對引用計數(shù)加一,當(dāng)對象被銷毀的時候,weak定義的變量會自動變成nil(空值)
    • strong持有對象
  • 解釋一下什么事retain cycle(循環(huán)引用計數(shù))
    • 對象相互持有,或者多個對象循環(huán)持有,相互依賴,引用計數(shù)無法清空
    • 會導(dǎo)致內(nèi)存泄露
    • 應(yīng)該設(shè)置部分變量為weak來解除循環(huán)引用
  • dealloc的作用和實現(xiàn)
    • dealloc是類的析構(gòu)函數(shù),會在對象引用計數(shù)變0的時候自動調(diào)用
    • dealloc一般會釋放申請的資源,定時器,注銷注冊的消息等等
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

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

  • 搜集于互聯(lián)網(wǎng),如有侵權(quán),刪之。 1.屬性readwrite,readonly,assign,retain,copy...
    findM閱讀 4,509評論 0 51
  • 人在面試途中,都是套路?。。?!。 本文包括: OC的面向?qū)ο?運(yùn)行時Runtime 運(yùn)行循環(huán)RunLoop 事件響...
    Miu七七閱讀 1,763評論 0 13
  • 1.屬性readwrite,readonly,assign,retain,copy,nonatomic 各是什么作...
    曾令偉閱讀 1,130評論 0 10
  • 1.OC里用到集合類是什么? 基本類型為:NSArray,NSSet以及NSDictionary 可變類型為:NS...
    輕皺眉頭淺憂思閱讀 1,478評論 0 3
  • 前言:木木最近忙于面試,分類總結(jié)了一些基礎(chǔ)面試題,接下來會分篇章給大家分享出來~ autoreleasePool一...
    Stars木木閱讀 816評論 3 3

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