筆試題目三

警告:必定要把英文題目過一遍,有些公司的題目故意弄成英文的!!!java

Difference between shallow copy and deep copy?服務器

淺拷貝:指針(地址)拷貝,不會產生新對象 網絡

深拷貝:內容拷貝,會產生新對象異步

 

What is advantage of categories? What is difference between implementing a category and inheritance? this

分類能夠在不修改原來類模型的基礎上拓充方法編碼

分類只能擴充方法、不能擴充成員變量;繼承能夠擴充方法和成員變量代理

繼承會產生新的類指針

 

Difference between categories and extensions?對象

分類是有名稱的,類擴展沒有名稱繼承

分類只能擴充方法、不能擴充成員變量;類擴展能夠擴充方法和成員變量

類擴展通常就寫在.m文件中,用來擴充私有的方法和成員變量(屬性)

 

Difference between protocol in objective c and interfaces in java?

Java的接口中聲明的方法必須都實現

Oc的protocol中聲明的方法並不必定要實現

 

What are KVO and KVC?

KVC是鍵值編碼,能夠經過一個字符串的key(屬性名)修改對象的屬性值

KVO是鍵值監聽,能夠監聽一個對象屬性值的改變

 

What is purpose of delegates?

兩個對象之間傳遞數據和消息

解耦,拆分業務邏輯

 

What are mutable and immutable types in Objective C?

mutable是可變類型,好比NSMutableArray,能夠動態往裏面添加元素

immutable是不可變類型,好比NSArray,固定的存儲空間,不能添加元素

 

When we call objective c is runtime language what does it mean?

動態綁定:對象類型在運行時才真正肯定 

多態性

 

what is difference between NSNotification and protocol?

經過NSNotification能夠給多個對象傳遞數據和消息

經過protocol(代理模式)只能給一個對象傳遞數據和消息 

 

What is push notification?

本地推送:程序內部彈出通知到用戶設備

遠程推送:由推送服務器推送通知到用戶設備

 

What is Polymorphism?

多態:父類指針指向子類對象

 

What is Singleton?

單粒:保證程序運行過程當中,永遠只有一個對象實例

目的是:全局共享一份資源、節省沒必要要的內存開銷

 

What is responder chain?


 響應者鏈:

UIResponder有一個nextResponder屬性,經過該屬性能夠組成一個響應者鏈,事件或消息在其路徑上進行傳遞

若是UIResponder沒有處理傳給它的事件,會將未處理的消息轉發給本身的nextResponder

 

Difference between frame and bounds?
 

frame以父控件的左上角爲座標原點

bounds以控件自己的左上角爲座標原點

 

Difference between method and selector?

經過一個selector能夠找到方法地址,進而調用一個方法 

 

Is there any garbage collection mechanism in Objective C.?

OC 1.0沒有垃圾回收

OC 2.0有垃圾回收,只能用在Mac上

iOS中有ARC機制,是編譯器特性,垃圾回收是運行時特性

 

What is NSOperation queue?

用來存放NSOperation對象的隊列,能夠用來異步執行一些操做

通常能夠用在網絡請求等耗時操做

 

What is lazy loading?

延遲加載:好比控制器的view,在第一次用到view時纔會調用loadView方法進行建立

Can we use two tableview controllers on one viewcontroller?

從技術角度上分析,一個控制器內部添加2個表格控制器是沒有問題的

 

Can we use one tableview with two different datasources? How you will achieve this?

從對象屬性上分析,tableView只有一個dataSource屬性。固然,真要使用2個不一樣的數據源,仍是有其餘辦法解決的

相關文章
相關標籤/搜索