iOS 螞蟻金服面試題(一)

2021-07-26 02:48:06 字數 774 閱讀 5881

原文首發位址

洲洲哥整理提供,有些地方說的不準確的地方還希望各位看官指正!

下面進入整體

1:在kvo中,他是怎麼知道監聽的物件發生了變化?

kvo簡單介紹

中文名稱:觀察者

功能描述:

是乙個第三者的觀察方,在不改變被觀察物件任何屬性的情況下,監聽屬性和物件的改變。並有自己的功能函式去處理。

特性:方便好、好用、容易遺漏移除問題。

原理理解:這是我在網上看的最靠譜的理解了

當某個類的物件第一次被觀察時,系統就會在執行期動態的建立該類的乙個派生類,在這個派生類中重寫基類中的任何被觀察屬性的setter方法。

派生類在被重寫的setter方法實現真正的通知機制,就如前面手動實現鍵值觀察那樣,這麼做事基於設定屬性會呼叫setter方法,而通過重寫就獲得了kvo需要的通知機制。當然前提是要通過遵循kvo的屬性設定方法來變更屬性值,如果僅僅是直接修改屬性對應的成員變數,是無線實現kvo的。

同時派生類還重寫了class方法以「騙取」外部呼叫者他就是起初的那個類。然後系統將這個物件的isa指標指向這個新誕生的派生類,因此這個物件就成為該派生類的物件,因而在該物件上對setter的呼叫就會呼叫重寫的setter,從而啟用鍵值通知機制。此外。派生類還重寫的dealloc方法來釋放資源。

不要懵逼,不要害怕。上面可以解釋了

螞蟻金服機試題分享

經過 7 輪面試,最近拿到了螞蟻金服的 offer。只可惜螞蟻總部在杭州,要求每個月需要出差杭州最少兩周以上。再加之阿里 螞蟻的工作氛圍,我是早在朋友處有耳聞,996 都不止。自己目前正在往金融行業轉型,也更想做一些更自由的事情,所以應該是不會去了。螞蟻的面試,基本都是技術的。感覺每一輪也沒有什麼太...

螞蟻金服面試涼經

自我介紹,專案介紹,印象比較深刻的專案 影象質量評價方面的評價指標 專業性的問題,主要是機器學習方面的,roc計算公式,過擬合與欠擬合原因與解決辦法,relu優缺點,l1和l2正則化區別,優劣 歸一化的方法,為什麼進行歸一化,歸一化是必須的嗎 正例和反例數目不一樣時,如何做 ps,還問了很多常用的機...

什麼是執行緒死鎖 如何解決 (螞蟻金服面試題)

認識執行緒死鎖 多個執行緒同時被阻塞,它們中的乙個或者全部都在等待某個資源被釋放。由於執行緒被無限期地阻塞,因此程式不可能正常終止。如下圖所示,執行緒 a 持有資源 2,執行緒 b 持有資源 1,他們同時都想申請對方的資源,所以這兩個執行緒就會互相等待而進入死鎖狀態。死鎖示意圖 下面通過乙個例子來說...