面試題(十一)

2022-05-04 11:09:10 字數 1149 閱讀 1037

11.iphone os有沒有垃圾**(gc)?沒有。iphone開發的時候沒有垃圾**機制。

13. 什麼時候用delegate,什麼時候用notification?答:delegate針對one-to-one關係,並且reciever可以返回值 給sender,notification 可以針對one-to-one/many/none,reciever無法返回值給sender.所以,delegate用於sender希望接受到 reciever的某個功能反饋值,notification用於通知多個object某個事件。

14.什麼是kvc和 kvo? 答:kvc(key-value-coding)內部的實現:乙個物件在呼叫setvalue的時候,(1)首先根據方法名找到執行方法的時候所需要的環 境引數。(2)他會從自己isa指標結合環境引數,找到具體的方法實現的介面。(3)再直接查詢得來的具體的方法實現。kvo(key-value- observing):當觀察者為乙個物件的屬性進行了註冊,被觀察物件的isa指標被修改的時候,isa指標就會指向乙個中間類,而不是真實的類。所以 isa指標其實不需要指向例項物件真實的類。所以我們的程式最好不要依賴於isa指標。在呼叫類的方法的時候,最好要明確物件例項的類名。

15.notification和kvo有什麼不同?答:不知道

16.kvo在objc中是怎麼實現的?答:不知道

17.viewcontroller 的 loadview, viewdidload, viewdidunload 分別是在什麼時候呼叫的?在自定義viewcontroller的時候這幾個函式裡面應該做什麼工作?答:viewdidload在view 從nib檔案初始化時呼叫,loadview在controller的view為nil時呼叫。此方法在程式設計實現view時呼叫,view 控制器缺省會註冊memory warning notification,當view controller的任何view 沒有用的時候,viewdidunload會被呼叫,在這裡實現將retain 的view release,如果是retain的iboutlet view 屬性則不要在這裡release,iboutlet會負責release 。

18.viewcontroller 的 didreceivememorywarning 是在什麼時候被呼叫的?預設的操作是什麼?答:預設呼叫[super didreceivememorywarning]

linux C經典面試題十一

1.有以下表示式 int a 248 b 4 int const c 21 const int d a int const e b int const f const a 請問下列表示式哪些會被編譯器禁止?為什麼?c 32 d b d 43 e 34 e a f 0x 321f c 這是個什麼東東,...

hadoop面試題整理 十一

1.hbase怎麼預分割槽?2.hbase怎麼給web前台提供介面來訪問?3.htable api有沒有執行緒安全問題,在程式中是單例還是多例?4.hbase有沒有併發問題?5.metaq訊息佇列,zookeeper集群,storm集群,就可以完成對 推薦系統功能嗎?還有沒有其他的中介軟體?6.st...

Java面試題之三十一

第三十一,swtich是否能作用在byte上,是否能作用在long上,是否能作用在string上?switch expr1 中,expr1是乙個整數表示式。因此傳遞給 switch 和 case 語句的引數應該是 int short char 或者 byte。long,string 都不能作用於sw...