Swift 面試總結(jié) (下)

1.Swift為什么有可選類型值?

如果一個常量草巡,或變量守呜,它的值可能存在,也可能不存在,那么可以定義這個值為可選類型值查乒。這樣做的好處就是弥喉,它不存在的時候,自動為nil(swift里面nil跟OC中不一樣玛迄,swift的nil指可選類型值不存在由境,OC中的nil指對象為空)。

我的理解是蓖议,可選類型值虏杰,是普通的常量或變量做了封裝,加了個殼勒虾,如果要用這個值纺阔,就需要解包。

2.在結(jié)構(gòu)體內(nèi)部方法中如果修改了結(jié)構(gòu)體的成員修然,那么該方法之前應(yīng)該加入的關(guān)鍵字是什么州弟?

答案:mutating
由于結(jié)構(gòu)體是值類型,Swift規(guī)定不能直接在結(jié)構(gòu)體的方法(初始化器除外)中修改成員低零。原因很簡單,結(jié)構(gòu)體作為值的一種表現(xiàn)類型怎么能提供改變自己值的方法呢拯杠,但是使用mutating我們便可以辦到這點掏婶,當(dāng)然這也是和類的不同點

3.Swift中enum、struct潭陪、class三者異同

  • 枚舉雄妥、結(jié)構(gòu)體、類的共同點:
    1依溯,定義屬性和方法老厌;
    2,下標(biāo)語法訪問值黎炉;
    3枝秤,初始化器;
    4慷嗜,支持擴展增加功能淀弹;
    5,可以遵循協(xié)議庆械;

  • 類特有的功能:
    1薇溃,繼承;
    2缭乘,允許類型轉(zhuǎn)換沐序;
    3,析構(gòu)方法釋放資源;
    4策幼,引用計數(shù)邑时;

  • 類是引用類型
    引用類型(reference types,通常是類)被復(fù)制的時候其實復(fù)制的是一份引用垄惧,兩份引用指向同一個對象刁愿。所以在修改一個實例的數(shù)據(jù)時副本的數(shù)據(jù)也被修改了。

  • 枚舉到逊,結(jié)構(gòu)體是值類型
    值類型(value types)的每一個實例都有一份屬于自己的數(shù)據(jù)铣口,在復(fù)制時修改一個實例的數(shù)據(jù)并不影響副本的數(shù)據(jù)。值類型和引用類型是這三兄弟最本質(zhì)的區(qū)別觉壶。

當(dāng)你使用Cocoa框架的時候脑题,很多API都要通過NSObject的子類使用,所以這>時候必須要用到引用類型class铜靶。在其他情況下叔遂,有下面幾個準(zhǔn)則:
什么時候該用值類型:
要用==運算符來比較實例的數(shù)據(jù)時
你希望那個實例的拷貝能保持獨立的狀態(tài)時
數(shù)據(jù)會被多個線程使用時
什么時候該用引用類型(class):
要用==運算符來比較實例身份的時候
你希望有創(chuàng)建一個共享的、可變對象的時候

更新中...

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末争剿,一起剝皮案震驚了整個濱河市已艰,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌蚕苇,老刑警劉巖哩掺,帶你破解...
    沈念sama閱讀 207,113評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異涩笤,居然都是意外死亡嚼吞,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,644評論 2 381
  • 文/潘曉璐 我一進店門蹬碧,熙熙樓的掌柜王于貴愁眉苦臉地迎上來舱禽,“玉大人,你說我怎么就攤上這事恩沽√苤桑” “怎么了?”我有些...
    開封第一講書人閱讀 153,340評論 0 344
  • 文/不壞的土叔 我叫張陵罗心,是天一觀的道長片吊。 經(jīng)常有香客問我,道長协屡,這世上最難降的妖魔是什么俏脊? 我笑而不...
    開封第一講書人閱讀 55,449評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮肤晓,結(jié)果婚禮上爷贫,老公的妹妹穿的比我還像新娘认然。我一直安慰自己,他們只是感情好漫萄,可當(dāng)我...
    茶點故事閱讀 64,445評論 5 374
  • 文/花漫 我一把揭開白布卷员。 她就那樣靜靜地躺著,像睡著了一般腾务。 火紅的嫁衣襯著肌膚如雪毕骡。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,166評論 1 284
  • 那天岩瘦,我揣著相機與錄音未巫,去河邊找鬼。 笑死启昧,一個胖子當(dāng)著我的面吹牛叙凡,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播密末,決...
    沈念sama閱讀 38,442評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼握爷,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了严里?” 一聲冷哼從身側(cè)響起新啼,我...
    開封第一講書人閱讀 37,105評論 0 261
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎刹碾,沒想到半個月后燥撞,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,601評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡教硫,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,066評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了辆布。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片瞬矩。...
    茶點故事閱讀 38,161評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖锋玲,靈堂內(nèi)的尸體忽然破棺而出景用,到底是詐尸還是另有隱情,我是刑警寧澤惭蹂,帶...
    沈念sama閱讀 33,792評論 4 323
  • 正文 年R本政府宣布伞插,位于F島的核電站,受9級特大地震影響盾碗,放射性物質(zhì)發(fā)生泄漏媚污。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,351評論 3 307
  • 文/蒙蒙 一廷雅、第九天 我趴在偏房一處隱蔽的房頂上張望耗美。 院中可真熱鬧京髓,春花似錦、人聲如沸商架。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,352評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽蛇摸。三九已至备图,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間赶袄,已是汗流浹背揽涮。 一陣腳步聲響...
    開封第一講書人閱讀 31,584評論 1 261
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留弃鸦,地道東北人绞吁。 一個月前我還...
    沈念sama閱讀 45,618評論 2 355
  • 正文 我出身青樓,卻偏偏與公主長得像唬格,于是被迫代替她去往敵國和親家破。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,916評論 2 344

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