ios 平時自己面試遇到的一些問題詳情,ios一些問題

來源:互聯網
上載者:User

ios 平時自己面試遇到的一些問題詳情,ios一些問題

記錄一下平時看到過的面試題,後面遇到好的再添加

屬性的實質是什麼屬性預設的關鍵字都有哪些?atomic和nonatomic區別?@dynamic關鍵字和@synthesize關鍵字是用來做什麼的?

1 @property = ivar + getter + setter;@property 系統會自動產生setter和getter方法;

2readwrite(讀寫),readonly(唯讀),assign(不會使引用計數加1),retain(引用計數加1)

copy,nonatomic(非原子性訪問,多線程並發訪問會提高效能),atomic(原子訪問)

weak(相當於assign,可以把對應的指標變數置為nil)

3 atomic和nonatomic區別主要是在於系統產生的getter和setter方法不一樣,nonatomic的速度要比atomic快

atomic會給線程增加一個安全鎖,但是atomic並不能保證安全執行緒

4 dynamic和synthesize,前者不自動產生setter和getter由自己實現存取方法,後者編譯期間會讓編譯器自動產生setter/getter方法,當 有自訂的存或取方法時,自訂會屏蔽自動產生該方法

二 NSString一般關鍵字使用copy還是strong?為什嗎?

三 可變集合類 和 不可變集合類的 copy 和 mutablecopy有什麼區別?

四 進程和線程的區別?同步非同步區別?並行和並發的區別?

進程和線程的區別:一個程式至少有一個進程,一個進程至少有一個線程,進程是資源分派和擁有的單位,同一個進程內的線程共用進程資源。線程是處理器調度的基本單位。

並行和並發的區別:並發性:兩個和兩個以上的事件或活動在同一時間間隔內發生,並行性:是指兩個和兩個以上事件或活動在同一時刻發生

五 GCD的一些常用的函數

dispatch_async非同步執行隊列dispatch_sync 同步執行隊列 dispatch_get_main_queue全域串列dispatch_get_global_queue並發

六 資料持久化(FMDB)

七說一下AppDelegate的幾個方法?從後台到前台調用了哪些方法?第一次啟動調用了哪些方法?從前台到後台調用了哪些方法?

八 NSCache優於NSDictionary的幾點?

NSCache是一個容器,用於臨時儲存物件,NSCache中的key不用實現copy,儲存的對象也不必實現NSCoding協議,程式退出後就被釋放

九知不知道Designated Initializer?使用它的時候有什麼需要注意的問題?

十 如何捕捉導覽列系統返回鍵的點擊事件

- (BOOL)navigationBar:(UINavigationBar *)navigationBar shouldPushItem:(UINavigationItem *)item; // called to push. return NO not to.

十一 是否使用過在一個類裡面定義多個類

十二 在cell的.m裡面如何擷取到cell所在的controller(通過UIResponder)

十三 對appdelegate的rootViewController進行過什麼操作(比如替換)

十四 類別與延展

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.