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];?
}?
}