iOS開發(fā)高級(jí)程序員面試題-答案_第1頁
iOS開發(fā)高級(jí)程序員面試題-答案_第2頁
iOS開發(fā)高級(jí)程序員面試題-答案_第3頁
iOS開發(fā)高級(jí)程序員面試題-答案_第4頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、一、判斷題(每題2分,共20分)1、UITableView能夠綁定多個(gè)數(shù)據(jù)源。(錯(cuò))2、一個(gè)UIViewController可以管理多個(gè)UITableView。(對(duì))3、Object-c的類可以多重繼承。(錯(cuò))4、objective-c類里面的方法只有兩種, 靜態(tài)方法和實(shí)例方法。(對(duì))5、NSFileManager和NSWorkspace在使用時(shí)都是基于進(jìn)程進(jìn)行單件對(duì)象的實(shí)例化。(對(duì))6、用類別增加方法時(shí),不能與原來類中的方法產(chǎn)生名稱沖突。(錯(cuò))7、frame指的是該view在本身坐標(biāo)系統(tǒng)中 的位置和大小。(錯(cuò))8、method是一個(gè)方法的名字,selector是一個(gè)組合體。(錯(cuò))9、ARC是

2、編譯特性,不是運(yùn)行時(shí)特性,在編譯時(shí),編譯器會(huì)自動(dòng)加上釋放代碼。(對(duì))10、從iOS4之后,Safari支持全屏瀏覽,Siri支持普通話。(對(duì))二、填空題(每空2分,共20分)1、iOS是使用Objective-C語言編寫的,使用該語言開發(fā)的Cocoa是一款功能強(qiáng)大的用戶界面工具包,也是iOS的核心。2、數(shù)組是將元素在內(nèi)存中連續(xù)存放,由于每個(gè)元素占用內(nèi)存相同,可以通過下標(biāo)迅速訪問數(shù)組中任何元素。鏈表恰好相反,其中的元素在內(nèi)存中不是順序存儲(chǔ)的,而是通過存在元素中的指針聯(lián)系到一起。3、發(fā)送同步請(qǐng)求,程序?qū)⑼V褂脩艚换ィ敝练?wù)器返回?cái)?shù)據(jù)完成,才可以進(jìn)行下一步操作。而發(fā)送異步請(qǐng)求不會(huì)阻塞主線程,會(huì)建立

3、一個(gè)新的線程來操作,之后程序可以繼續(xù)運(yùn)行。4、autorelease只是把Object放入了當(dāng)前的autorelease pool中,當(dāng)它被釋放時(shí),其中的所有Object都會(huì)被調(diào)用Release。5、作為Objective-C導(dǎo)入頭文件的關(guān)鍵字,#import<>用來包含系統(tǒng)的頭文件,#import”用來包含用戶頭文件。三、簡(jiǎn)述題(每題4分,共20分)1、delegate和notification有什么區(qū)別,什么情況下使用?答:delegate:消息的發(fā)送者(sender)告知接收者(receiver)某個(gè)事件將要發(fā)生,delegate同意然后發(fā)送者響應(yīng)事件,delegate機(jī)制使

4、得接收者可以改變發(fā)送者的行為。 通常發(fā)送者和接收者的關(guān)系是直接的一對(duì)多的關(guān)系。notification:消息的發(fā)送者告知接收者事件已經(jīng)發(fā)生或者將要發(fā)生,僅此而已,接收者并不能反過來影響發(fā)送者的行為。通常發(fā)送者和接收者的關(guān)系是間接的多對(duì)多關(guān)系。2、Object-C中創(chuàng)建線程的方法是什么?如果在主線程中執(zhí)行代碼,方法是什么?如果想延時(shí)執(zhí)行代碼、方法又是什么?答:線程創(chuàng)建有三種方法:使用NSThread創(chuàng)建、使用 GCD的dispatch、使用子類化的NSOperation,然后將其加入NSOperationQueue。在主線程執(zhí)行代碼,方法是 performSelectorOnMainThread

5、。如果想延時(shí)執(zhí)行代碼可以用performSelector:onThread:withObject:waitUntilDone。3、iOS有哪些數(shù)據(jù)持久化方式?答:四種:屬性列表、對(duì)象歸檔、SQLite3和Core Data。4、Objective-C如何對(duì)內(nèi)存管理的,說說你的看法和解決方法?答:Objective-C的內(nèi)存管理主要有三種方式ARC(自動(dòng)內(nèi)存計(jì)數(shù))、手動(dòng)內(nèi)存計(jì)數(shù)、內(nèi)存池。解決方法的話:誰持有,誰釋放。5、如何對(duì)iOS設(shè)備進(jìn)行性能測(cè)試?答:Profile-> Instruments ->Time Profiler。四、問答題(每題10分,共20分)1、什么是MVC,為什

6、么使用MVC,有什么好處?描述一下iOS SDK中如何實(shí)現(xiàn)MVC的開發(fā)模式。答:MVC分別為:模型(Model),視圖(View)和控制Controller)。模型(Model):即“數(shù)據(jù)模型”,用于封裝與應(yīng)用程序的業(yè)務(wù)邏輯相關(guān)的數(shù)據(jù)以及對(duì)數(shù)據(jù)的處理方法?!澳P汀庇袑?duì)數(shù)據(jù)直接訪問的權(quán)力,例如對(duì)數(shù)據(jù)庫的訪問。視圖(View):視圖層能夠?qū)崿F(xiàn)數(shù)據(jù)有目的顯示??刂破鳎–ontroller):控制器起到不同層面間的組織作用,用于控制應(yīng)用程序的流程。對(duì)于iOS SDK,所有的View都是視圖層的,它應(yīng)該獨(dú)立于模型層,由視圖控制層來控制。所有的用戶數(shù)據(jù)都是模型層,它應(yīng)該獨(dú)立于視圖。所有的ViewContr

7、oller都是控制層,由它負(fù)責(zé)控制視圖,訪問模型數(shù)據(jù)。2、請(qǐng)闡述UIViewController的生命周期,包括代碼的執(zhí)行順序。答:當(dāng)一個(gè)視圖控制器被創(chuàng)建,并在屏幕上顯示的時(shí)候。代碼的執(zhí)行順序/ 視圖顯示在屏幕上的順序1、alloc 創(chuàng)建對(duì)象,分配空間。2、init (initWithNibName) 初始化對(duì)象,初始化數(shù)據(jù)。 3、viewload 從nib載入視圖, 這一步不需要去干涉。除非沒有使用xib文件創(chuàng)建視圖。4、viewDidLoad 加載完畢,可以進(jìn)行自定義數(shù)據(jù)以及動(dòng)態(tài)創(chuàng)建其他控件。5、viewWillAppear 視圖將出現(xiàn)在屏幕之前,馬上這個(gè)視圖即將顯示在屏幕上。6、viewDidAppear 視圖已在屏幕上渲染完成。 / 視圖將被從屏幕上移除的順序1、viewWillDisappear 視圖將被從屏幕上移除之前執(zhí)行。2、viewDidDisappear 視圖已經(jīng)被從屏幕上移除。3、dealloc 視圖被銷毀,此時(shí)需要在init和viewDidLoad中創(chuàng)建的對(duì)象進(jìn)行釋放。4、viewDidUnload 出現(xiàn)內(nèi)存警告在內(nèi)存不足時(shí)執(zhí)行,并對(duì)所有非當(dāng)前顯示的controller執(zhí)行。本視圖的所有子視圖將被銷毀,以釋放內(nèi)存,此時(shí)開發(fā)者需要手動(dòng)對(duì)viewLoad、viewDidLo

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論