iOS面試題-每日十道-第一天

整理一些重點(diǎn)和面試問到幾率比較大的題目給小伙伴
對(duì)您有幫助或者您喜歡的話 希望能點(diǎn)個(gè)贊或者添加一下關(guān)注

一. CALayer和UIView的區(qū)別聯(lián)系

  • 1 UIView是UIKIt的只能在iOS使用, CALayer是QuartzCore的 iOS和mac os通用
  • 2 CALayer比UIView更加輕量級(jí),但是可以實(shí)現(xiàn)同樣的效果
  • 3 UIView的CALayer類似UIView的子View樹形結(jié)構(gòu)
  • 4 UIView比CALayer多了一個(gè)事件處理功能,也就是說UIView能處理用戶觸摸
  • 5 UIView有個(gè)重要的屬性layer,可以返回它的主CALayer實(shí)例.CALayer *layer = myView.layer
  • 6 坐標(biāo)系統(tǒng): CALayer的坐標(biāo)系統(tǒng)比UIView多了一個(gè)anchorPoint屬性
  • 7 UIView是iOS系統(tǒng)中界面的基本元素,所有的界面元素都是繼承自它.它本身完全是由CoreAnimation來實(shí)現(xiàn)的.它真正的繪圖部分,是由一個(gè)CALayer類來管理的.UIView本身更像是一個(gè)CALayer的管理權(quán),訪問它的跟繪圖和跟坐標(biāo)有關(guān)的屬性,如frame,bounds等,實(shí)際上內(nèi)部都是在訪問它所包含的CALayer的相關(guān)屬性.
    layer可以設(shè)置圓角顯示 cornerRadius 也可以設(shè)置陰影 shadowColor 但是如果layer??中某個(gè)layer設(shè)置了圓角 ??中所有l(wèi)ayer的陰影效果將都不顯示.因此要死設(shè)置有圓角還要陰影,可以做兩個(gè)UIView重疊,一個(gè)layer顯示圓角一個(gè)layer顯示陰影
  • 8 渲染 當(dāng)更新層 改變不能立即顯示在屏幕上.當(dāng)所有的層都準(zhǔn)備好時(shí),可以調(diào)用setNeedsDisplay方法來重繪顯示.
  • 9 變換 要在一個(gè)層中添加一個(gè)3D或仿射變換,可以分別設(shè)置層的transform或者affineTransform屬性
  • 10 變形Quartz Core的渲染能力 使二維圖像可以被自由的操縱,就像是三維的.圖像可以在一個(gè)三維坐標(biāo)系中以任意的角度被旋轉(zhuǎn) 縮放 和傾斜.CATransform3D的一套方法提供了一些魔術(shù)般的效果

二. 簡述同步和異步

同步:串行的執(zhí)行任務(wù) 異步:并行的執(zhí)行任務(wù).同步函數(shù)不具備開啟線程的能力,而異步函數(shù)具備
所謂同步,就是在發(fā)出一個(gè)調(diào)用時(shí),在沒有得到結(jié)果之前,該調(diào)用就不返回.但是一旦調(diào)用返回,就得到返回值了.也就是 由調(diào)用者主動(dòng)等待這個(gè)調(diào)用結(jié)果
而異步則是相反,調(diào)用在發(fā)出之后,這個(gè)調(diào)用就直接返回了,所以沒有返回結(jié)果.換句話說就是當(dāng)一個(gè)異步過程調(diào)用發(fā)出后懂傀,調(diào)用者不會(huì)立刻得到結(jié)果帝牡。而是在調(diào)用發(fā)出后母债,被調(diào)用者通過狀態(tài)、通知來通知調(diào)用者蛆楞,或通過回調(diào)函數(shù)處理這個(gè)調(diào)用.

三. 多線程安全怎么控制?

用互斥鎖,隊(duì)列組,柵欄函數(shù),依賴

四. 簡要說明什么時(shí)候使用繼承,什么時(shí)候使用類別

在OC中,一個(gè)類繼承另一個(gè)類,就是繼承了父類所有的屬性和方法,并且可以擴(kuò)充自己的屬性:而類別是在不改變?cè)蓄惖幕A(chǔ)上進(jìn)行方法擴(kuò)充;
因此,根據(jù)開發(fā)需求,如果這個(gè)類需要擴(kuò)充屬性,或者需要重寫系統(tǒng)的類的某些方法,用繼承;如果只是對(duì)一個(gè)類擴(kuò)充接口和模塊,使用類別更加方便.

五. 簡述蘋果的安全機(jī)制

  • 數(shù)字簽名機(jī)制:在iOS中運(yùn)行的App必須 擁有自己的數(shù)字簽名,而數(shù)字簽名來與開發(fā)者的數(shù)字證書;開發(fā)者需要加入"iOS開發(fā)者計(jì)劃"才能獲取證書 而且其開發(fā)的App還要經(jīng)過嚴(yán)格的審查才能在AppStore上架,保證了App的安全;杜絕了第三方和未簽名App的運(yùn)行;
  • 沙盒保護(hù)機(jī)制:這種機(jī)制使得設(shè)備內(nèi)的各個(gè)App之間無法直接進(jìn)行交流,只能通過iOS來進(jìn)行數(shù)據(jù)傳遞;雖然降低了系統(tǒng)的擴(kuò)展性但是卻保證了安全性;
  • 不要使用越獄,否則蘋果的安全機(jī)制就功虧一簣;
  • 只從AppStore獲取App;
  • 第一次連接計(jì)算機(jī),不要隨意點(diǎn)"信任";
  • 不要隨意給某個(gè)App設(shè)置隱私讀取權(quán)限;

六 關(guān)鍵字const有什么含意?修飾類呢?static的作用,用于類呢?還有extern c的作用?

  • 當(dāng)使用 const修飾基數(shù)數(shù)據(jù)類型變量時(shí),該變量就變?yōu)槌A?進(jìn)入靜態(tài)區(qū)

  • 當(dāng)使用const修飾指針類型變量時(shí):

    • 當(dāng)使用const在指針類型兩邊,那么該指針變量指向的內(nèi)存空間的內(nèi)容就不能改變了,但指針的指向可以改變.
  • 如果const在變量的左邊,那么該指針的指向不能改變了,而指向內(nèi)存空間的內(nèi)容可以改變

  • 當(dāng)使用const修飾符時(shí),const NSSting *str,相當(dāng)于修飾該對(duì)象,表示對(duì)象是不可更改的.

  • static修飾變量,表示這個(gè)內(nèi)部全局變量,只能在本文件中訪問.系統(tǒng)會(huì)將該變量放進(jìn)靜態(tài)區(qū),它的生命周期被延長到了程序結(jié)束

  • static修飾類, 表示這個(gè)內(nèi)部的方法, 只能在本文件中訪問.

  • extern c表示聲明了一外部變量, 多個(gè)外部變量如果同名,實(shí)際指向的是同一塊存儲(chǔ)空間.

七. 類工廠方法是什么?

  • 類工廠方法的實(shí)現(xiàn)是為了向客戶提供方便,它們將分配和初始化合在一個(gè)步驟中,返回被創(chuàng)建的對(duì)象,并進(jìn)行自動(dòng)釋放處理.這些方法的形式是+(type)className..其中className不包括任何前綴. 工廠方法可能不僅僅為了方便使用,它們不但可以將分配和初始化合在一起,還可以為初始化過程提供對(duì)象的分配信息.類工廠方法的另一個(gè)目的是使類提供單間實(shí)例.

八 UIView從出現(xiàn)到銷毀的過程?

-> loadView
-> viewDidLoad
-> viewWillAppear
-> viewWillLayoutSubviews
-> viewDidLayoutSubviews
-> viewDidAppear
-> viewWillDisappear
-> viewDidDisappear

九. 什么情況下回發(fā)生內(nèi)存泄漏和內(nèi)存溢出?

內(nèi)存溢出就是你要求分配的內(nèi)存超出了系統(tǒng)能給你的,系統(tǒng)不能滿足需求,于是就產(chǎn)生溢出.
內(nèi)存泄漏就是指你向系統(tǒng)申請(qǐng)分配內(nèi)存進(jìn)行使用,可以說使用完后沒有驚喜釋放,結(jié)果這塊內(nèi)存也無法分配給其他程序,稱之為內(nèi)存泄漏
內(nèi)存泄漏的累計(jì)危害非常大 最后會(huì)導(dǎo)致內(nèi)存溢出 程序閃退;
內(nèi)存泄漏分為四大類;

  • 常發(fā)生內(nèi)存泄漏:發(fā)生內(nèi)存泄漏的代碼會(huì)被多次執(zhí)行到,每次被執(zhí)行的時(shí)候都會(huì)導(dǎo)致一塊內(nèi)存泄漏.
  • 偶發(fā)生內(nèi)存泄漏.發(fā)生內(nèi)存泄漏的代碼只有在某些特定的壞境或者操作過程下才會(huì)發(fā)生;
  • 一次性內(nèi)存泄漏.發(fā)生內(nèi)存泄漏的代碼只會(huì)被執(zhí)行一次,或者由于算法上的缺陷,導(dǎo)致總會(huì)有一塊僅且一塊內(nèi)存發(fā)生泄漏;
  • 隱式內(nèi)存泄漏 程序在運(yùn)行的過程中不停的分配內(nèi)存, 但是直到結(jié)束的時(shí)候才釋放內(nèi)存,對(duì)于運(yùn)行周期很長的服務(wù)器,不及時(shí)釋放會(huì)耗盡內(nèi)存;

十 說說響應(yīng)者鏈條?

響應(yīng)者鏈條是一條由UIResponder的子類組成的鏈條,它們都能夠響應(yīng)時(shí)間,由事件的最佳相應(yīng)者起,如果它是控制器的view的話,它的上一級(jí)響應(yīng)者就是這個(gè)控制器,否則就是它的父控件;控制器的上一級(jí)響應(yīng)者是它父控制器的view,最終一直到window.

純手打 有錯(cuò)誤或者不對(duì)的地方希望大家能給指出
喜歡的小伙伴希望能給個(gè)贊 或者添加個(gè)關(guān)注

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末屯换,一起剝皮案震驚了整個(gè)濱河市明郭,隨后出現(xiàn)的幾起案子其徙,更是在濱河造成了極大的恐慌,老刑警劉巖钝鸽,帶你破解...
    沈念sama閱讀 206,311評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件汇恤,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡拔恰,警方通過查閱死者的電腦和手機(jī)因谎,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,339評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來颜懊,“玉大人财岔,你說我怎么就攤上這事『拥” “怎么了使鹅?”我有些...
    開封第一講書人閱讀 152,671評(píng)論 0 342
  • 文/不壞的土叔 我叫張陵,是天一觀的道長昌抠。 經(jīng)常有香客問我,道長鲁僚,這世上最難降的妖魔是什么炊苫? 我笑而不...
    開封第一講書人閱讀 55,252評(píng)論 1 279
  • 正文 為了忘掉前任裁厅,我火速辦了婚禮,結(jié)果婚禮上侨艾,老公的妹妹穿的比我還像新娘执虹。我一直安慰自己,他們只是感情好唠梨,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,253評(píng)論 5 371
  • 文/花漫 我一把揭開白布袋励。 她就那樣靜靜地躺著,像睡著了一般当叭。 火紅的嫁衣襯著肌膚如雪茬故。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,031評(píng)論 1 285
  • 那天蚁鳖,我揣著相機(jī)與錄音磺芭,去河邊找鬼。 笑死醉箕,一個(gè)胖子當(dāng)著我的面吹牛钾腺,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播讥裤,決...
    沈念sama閱讀 38,340評(píng)論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼放棒,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了己英?” 一聲冷哼從身側(cè)響起间螟,我...
    開封第一講書人閱讀 36,973評(píng)論 0 259
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎剧辐,沒想到半個(gè)月后寒亥,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,466評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡荧关,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,937評(píng)論 2 323
  • 正文 我和宋清朗相戀三年溉奕,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片忍啤。...
    茶點(diǎn)故事閱讀 38,039評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡加勤,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出同波,到底是詐尸還是另有隱情鳄梅,我是刑警寧澤,帶...
    沈念sama閱讀 33,701評(píng)論 4 323
  • 正文 年R本政府宣布未檩,位于F島的核電站戴尸,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏冤狡。R本人自食惡果不足惜孙蒙,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,254評(píng)論 3 307
  • 文/蒙蒙 一项棠、第九天 我趴在偏房一處隱蔽的房頂上張望重荠。 院中可真熱鬧般妙,春花似錦、人聲如沸市俊。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,259評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至顿苇,卻和暖如春峭咒,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背岖圈。 一陣腳步聲響...
    開封第一講書人閱讀 31,485評(píng)論 1 262
  • 我被黑心中介騙來泰國打工讹语, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人蜂科。 一個(gè)月前我還...
    沈念sama閱讀 45,497評(píng)論 2 354
  • 正文 我出身青樓顽决,卻偏偏與公主長得像,于是被迫代替她去往敵國和親导匣。 傳聞我的和親對(duì)象是個(gè)殘疾皇子才菠,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,786評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容