人事郵件本來(lái)約的11點(diǎn)打電話過(guò)來(lái)面試,然,結(jié)果到11.25才打過(guò)來(lái)。合肥的一個(gè)人打過(guò)來(lái)的。讓我自我介紹,然后問(wèn)的都是一些簡(jiǎn)單的基礎(chǔ)知識(shí),可能太在意了回答的不夠流暢的。但是改說(shuō)的東西我多說(shuō)了。可能就是項(xiàng)目架構(gòu)設(shè)計(jì)沒(méi)講好,最后被Pass了。
面試官問(wèn)的面試題: 1. 什么是arc?(arc是為了解決什么問(wèn)題誕生的?)
2. 請(qǐng)解釋以下keywords的區(qū)別: assign vs weak, __block vs __weak
3. __block在arc和非arc下含義一樣嗎?
4. 使用atomic一定是線程安全的嗎?
5. 描述一個(gè)你遇到過(guò)的retain cycle例子。(別撒謊,你肯定遇到過(guò))
6. +(void)load; +(void)initialize;有什么用處?
7. 為什么其他語(yǔ)言里叫函數(shù)調(diào)用, objective c里則是給對(duì)象發(fā)消息(或者談下對(duì)runtime的理解)
8. 什么是method swizzling?
9. UIView和CALayer是啥關(guān)系?
10. 如何高性能的給UIImageView加個(gè)圓角?(不準(zhǔn)說(shuō)layer.cornerRadius!)