iOS面試題6

1.什么是KVC?

KVC,即是指 NSKeyValueCoding,一個非正式的Protocol,提供一種機制來間接訪問對象的屬性。而不是通過調用Setter、Getter方法訪問。KVO 就是基于 KVC 實現的關鍵技術之一。

2.AFNetworking實現原理?

AFNetworking3.0之前是NSURLConnection, 之后是NSURLSession, 包括一些線程的優化以及封裝等

3.淺復制和深復制的區別??

答案:淺層復制:只復制指向對象的指針,而不復制引用對象本身。?

深層復制:復制引用對象本身。?

意思就是說我有個A對象,復制一份后得到A_copy對象后,對于淺復制來說,A和A_copy指向的是同一個內存資源,復制的只不過是是一個指針,對象本身資源?

還是只有一份,那如果我們對A_copy執行了修改操作,那么發現A引用的對象同樣被修改,這其實違背了我們復制拷貝的一個思想。深復制就好理解了,內存中存在了兩份獨立對象本身。?

用網上一哥們通俗的話將就是:?

淺復制好比你和你的影子,你完蛋,你的影子也完蛋?

深復制好比你和你的克隆人,你完蛋,你的克隆人還活著。

4.傳遞者鏈 和響應者鏈?

答案: 響應者鏈應該是:First Responser—-> UIView -- > The Window -- >The Application -- > App Delegate?

傳遞者鏈 UIWindow -> UIView -> Next UIView -> NextView (直到用戶觸碰的那個View)

5.app退到后臺,有的再點開還是之前的頁面,有的點開是重啟,怎么設置?

Appdelegate方法里 有個進入后臺 和將要返回到前臺的設置 在你將要從后臺進入前臺的方法里 去重新設置window的 rootViewcontrller

6.重新@property (nonatomic, copy) NSString *name; 的setter方法原型;?

(void)setName:(NSString *)name?

{?

if(_name){?

[ _name release];?

_name = [name copy];?

}?

}

iOS 面試題1

iOS 面試題2

iOS 面試題3

iOS 面試題4

iOS 面試題5

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。